51b07c:	8b b7 b0 05 00 00    	mov    0x5b0(%edi),%esi
51b082:	3b b7 b4 05 00 00    	cmp    0x5b4(%edi),%esi
51b088:	0f 84 41 06 00 00    	je     0x51b6cf
51b08e:	66 90                	xchg   %ax,%ax
51b090:	83 7b 14 10          	cmpl   $0x10,0x14(%ebx)
51b094:	8d bd 24 02 00 00    	lea    0x224(%ebp),%edi
51b09a:	ba 04 01 00 00       	mov    $0x104,%edx
51b09f:	c7 85 20 02 00 00 f8 	movl   $0xbd1cf8,0x220(%ebp)
51b0a6:	1c bd 00
51b0a9:	89 bd 28 03 00 00    	mov    %edi,0x328(%ebp)
51b0af:	89 95 2c 03 00 00    	mov    %edx,0x32c(%ebp)
51b0b5:	72 02                	jb     0x51b0b9
51b0b7:	8b 1b                	mov    (%ebx),%ebx
51b0b9:	85 db                	test   %ebx,%ebx
51b0bb:	75 08                	jne    0x51b0c5
51b0bd:	88 9d 24 02 00 00    	mov    %bl,0x224(%ebp)
51b0c3:	eb 78                	jmp    0x51b13d
51b0c5:	8b cb                	mov    %ebx,%ecx
51b0c7:	8d 41 01             	lea    0x1(%ecx),%eax
51b0ca:	89 45 e4             	mov    %eax,-0x1c(%ebp)
51b0cd:	0f 1f 00             	nopl   (%eax)
51b0d0:	8a 01                	mov    (%ecx),%al
51b0d2:	41                   	inc    %ecx
51b0d3:	84 c0                	test   %al,%al
51b0d5:	75 f9                	jne    0x51b0d0
51b0d7:	2b 4d e4             	sub    -0x1c(%ebp),%ecx
51b0da:	8d 41 01             	lea    0x1(%ecx),%eax
51b0dd:	89 45 e4             	mov    %eax,-0x1c(%ebp)
51b0e0:	3d 04 01 00 00       	cmp    $0x104,%eax
51b0e5:	76 45                	jbe    0x51b12c
51b0e7:	50                   	push   %eax
51b0e8:	e8 aa a6 f1 ff       	call   0x435797
51b0ed:	ff b5 2c 03 00 00    	push   0x32c(%ebp)
51b0f3:	8b f8                	mov    %eax,%edi
51b0f5:	ff b5 28 03 00 00    	push   0x328(%ebp)
51b0fb:	57                   	push   %edi
51b0fc:	e8 81 95 ef ff       	call   0x414682
51b101:	8b 85 28 03 00 00    	mov    0x328(%ebp),%eax
51b107:	8d 8d 24 02 00 00    	lea    0x224(%ebp),%ecx
51b10d:	83 c4 10             	add    $0x10,%esp
51b110:	3b c1                	cmp    %ecx,%eax
51b112:	74 09                	je     0x51b11d
51b114:	50                   	push   %eax
51b115:	e8 f8 34 f2 ff       	call   0x43e612
51b11a:	83 c4 04             	add    $0x4,%esp
51b11d:	8b 55 e4             	mov    -0x1c(%ebp),%edx
51b120:	89 bd 28 03 00 00    	mov    %edi,0x328(%ebp)
51b126:	89 95 2c 03 00 00    	mov    %edx,0x32c(%ebp)
51b12c:	53                   	push   %ebx
51b12d:	52                   	push   %edx
51b12e:	57                   	push   %edi
51b12f:	e8 5d 47 f2 ff       	call   0x43f891
51b134:	8b bd 28 03 00 00    	mov    0x328(%ebp),%edi
51b13a:	83 c4 0c             	add    $0xc,%esp
51b13d:	c7 85 20 02 00 00 04 	movl   $0xbd1d04,0x220(%ebp)
51b144:	1d bd 00
51b147:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
51b14b:	8d 9d f8 03 00 00    	lea    0x3f8(%ebp),%ebx
51b151:	ba 04 01 00 00       	mov    $0x104,%edx
51b156:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
51b15d:	c7 85 f4 03 00 00 f8 	movl   $0xbd1cf8,0x3f4(%ebp)
51b164:	1c bd 00
51b167:	89 9d fc 04 00 00    	mov    %ebx,0x4fc(%ebp)
51b16d:	89 95 00 05 00 00    	mov    %edx,0x500(%ebp)
51b173:	72 07                	jb     0x51b17c
51b175:	8b 06                	mov    (%esi),%eax
51b177:	89 45 e4             	mov    %eax,-0x1c(%ebp)
51b17a:	eb 05                	jmp    0x51b181
51b17c:	8b c6                	mov    %esi,%eax
51b17e:	89 75 e4             	mov    %esi,-0x1c(%ebp)
51b181:	85 c0                	test   %eax,%eax
51b183:	75 08                	jne    0x51b18d
51b185:	88 85 f8 03 00 00    	mov    %al,0x3f8(%ebp)
51b18b:	eb 72                	jmp    0x51b1ff
51b18d:	8b c8                	mov    %eax,%ecx
51b18f:	8d 79 01             	lea    0x1(%ecx),%edi
51b192:	8a 01                	mov    (%ecx),%al
51b194:	41                   	inc    %ecx
51b195:	84 c0                	test   %al,%al
51b197:	75 f9                	jne    0x51b192
51b199:	2b cf                	sub    %edi,%ecx
51b19b:	8d 79 01             	lea    0x1(%ecx),%edi
51b19e:	3b fa                	cmp    %edx,%edi
51b1a0:	76 44                	jbe    0x51b1e6
51b1a2:	57                   	push   %edi
51b1a3:	e8 ef a5 f1 ff       	call   0x435797
51b1a8:	ff b5 00 05 00 00    	push   0x500(%ebp)
51b1ae:	8b d8                	mov    %eax,%ebx
51b1b0:	ff b5 fc 04 00 00    	push   0x4fc(%ebp)
51b1b6:	53                   	push   %ebx
51b1b7:	e8 c6 94 ef ff       	call   0x414682
51b1bc:	8b 85 fc 04 00 00    	mov    0x4fc(%ebp),%eax
51b1c2:	8d 8d f8 03 00 00    	lea    0x3f8(%ebp),%ecx
51b1c8:	83 c4 10             	add    $0x10,%esp
51b1cb:	3b c1                	cmp    %ecx,%eax
51b1cd:	74 09                	je     0x51b1d8
51b1cf:	50                   	push   %eax
51b1d0:	e8 3d 34 f2 ff       	call   0x43e612
51b1d5:	83 c4 04             	add    $0x4,%esp
51b1d8:	8b d7                	mov    %edi,%edx
51b1da:	89 9d fc 04 00 00    	mov    %ebx,0x4fc(%ebp)
51b1e0:	89 95 00 05 00 00    	mov    %edx,0x500(%ebp)
51b1e6:	ff 75 e4             	push   -0x1c(%ebp)
51b1e9:	52                   	push   %edx
51b1ea:	53                   	push   %ebx
51b1eb:	e8 a1 46 f2 ff       	call   0x43f891
51b1f0:	8b bd 28 03 00 00    	mov    0x328(%ebp),%edi
51b1f6:	83 c4 0c             	add    $0xc,%esp
51b1f9:	8b 9d fc 04 00 00    	mov    0x4fc(%ebp),%ebx
51b1ff:	c7 85 f4 03 00 00 04 	movl   $0xbd1d04,0x3f4(%ebp)
51b206:	1d bd 00
51b209:	57                   	push   %edi
51b20a:	53                   	push   %ebx
51b20b:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
51b20f:	e8 c7 82 ee ff       	call   0x4034db
51b214:	83 c4 08             	add    $0x8,%esp
51b217:	8d 8d f4 03 00 00    	lea    0x3f4(%ebp),%ecx
51b21d:	85 c0                	test   %eax,%eax
51b21f:	0f 94 c3             	sete   %bl
51b222:	e8 d1 32 ef ff       	call   0x40e4f8
51b227:	8d 8d 20 02 00 00    	lea    0x220(%ebp),%ecx
51b22d:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
51b234:	e8 bf 32 ef ff       	call   0x40e4f8
51b239:	84 db                	test   %bl,%bl
51b23b:	75 1d                	jne    0x51b25a
51b23d:	8b 7d e8             	mov    -0x18(%ebp),%edi
51b240:	81 c6 d4 01 00 00    	add    $0x1d4,%esi
51b246:	8b 5d ec             	mov    -0x14(%ebp),%ebx
51b249:	3b b7 b4 05 00 00    	cmp    0x5b4(%edi),%esi
51b24f:	0f 85 3b fe ff ff    	jne    0x51b090
51b255:	e9 69 04 00 00       	jmp    0x51b6c3
51b25a:	8a 86 aa 00 00 00    	mov    0xaa(%esi),%al
51b260:	88 45 f2             	mov    %al,-0xe(%ebp)
51b263:	84 c0                	test   %al,%al
51b265:	0f 85 ad 03 00 00    	jne    0x51b618
51b26b:	8b 45 ec             	mov    -0x14(%ebp),%eax
51b26e:	8d 4e 18             	lea    0x18(%esi),%ecx
51b271:	8d 79 10             	lea    0x10(%ecx),%edi
51b274:	80 b8 aa 00 00 00 00 	cmpb   $0x0,0xaa(%eax)
51b27b:	0f 95 45 f3          	setne  -0xd(%ebp)
51b27f:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
51b283:	72 02                	jb     0x51b287
51b285:	8b 09                	mov    (%ecx),%ecx
51b287:	83 78 2c 10          	cmpl   $0x10,0x2c(%eax)
51b28b:	72 05                	jb     0x51b292
51b28d:	8b 50 18             	mov    0x18(%eax),%edx
51b290:	eb 03                	jmp    0x51b295
51b292:	8d 50 18             	lea    0x18(%eax),%edx
51b295:	8b 58 28             	mov    0x28(%eax),%ebx
51b298:	8b 3f                	mov    (%edi),%edi
51b29a:	3b df                	cmp    %edi,%ebx
51b29c:	8b c7                	mov    %edi,%eax
51b29e:	0f 42 c3             	cmovb  %ebx,%eax
51b2a1:	50                   	push   %eax
51b2a2:	51                   	push   %ecx
51b2a3:	52                   	push   %edx
51b2a4:	e8 54 71 f1 ff       	call   0x4323fd
51b2a9:	83 c4 0c             	add    $0xc,%esp
51b2ac:	85 c0                	test   %eax,%eax
51b2ae:	75 0a                	jne    0x51b2ba
51b2b0:	3b df                	cmp    %edi,%ebx
51b2b2:	72 06                	jb     0x51b2ba
51b2b4:	77 04                	ja     0x51b2ba
51b2b6:	85 c0                	test   %eax,%eax
51b2b8:	74 04                	je     0x51b2be
51b2ba:	c6 45 f3 01          	movb   $0x1,-0xd(%ebp)
51b2be:	8b 4d ec             	mov    -0x14(%ebp),%ecx
51b2c1:	8d 56 48             	lea    0x48(%esi),%edx
51b2c4:	83 c1 48             	add    $0x48,%ecx
51b2c7:	8d 7a 10             	lea    0x10(%edx),%edi
51b2ca:	83 7a 14 10          	cmpl   $0x10,0x14(%edx)
51b2ce:	72 02                	jb     0x51b2d2
51b2d0:	8b 12                	mov    (%edx),%edx
51b2d2:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
51b2d6:	8d 59 10             	lea    0x10(%ecx),%ebx
51b2d9:	72 02                	jb     0x51b2dd
51b2db:	8b 09                	mov    (%ecx),%ecx
51b2dd:	8b 3f                	mov    (%edi),%edi
51b2df:	8b c7                	mov    %edi,%eax
51b2e1:	8b 1b                	mov    (%ebx),%ebx
51b2e3:	3b df                	cmp    %edi,%ebx
51b2e5:	0f 42 c3             	cmovb  %ebx,%eax
51b2e8:	50                   	push   %eax
51b2e9:	52                   	push   %edx
51b2ea:	51                   	push   %ecx
51b2eb:	e8 0d 71 f1 ff       	call   0x4323fd
51b2f0:	8b c8                	mov    %eax,%ecx
51b2f2:	83 c4 0c             	add    $0xc,%esp
51b2f5:	85 c9                	test   %ecx,%ecx
51b2f7:	75 0d                	jne    0x51b306
51b2f9:	3b fb                	cmp    %ebx,%edi
51b2fb:	76 05                	jbe    0x51b302
51b2fd:	83 c9 ff             	or     $0xffffffff,%ecx
51b300:	eb 04                	jmp    0x51b306
51b302:	1b c9                	sbb    %ecx,%ecx
51b304:	f7 d9                	neg    %ecx
51b306:	0f b6 45 f3          	movzbl -0xd(%ebp),%eax
51b30a:	85 c9                	test   %ecx,%ecx
51b30c:	8b 4d ec             	mov    -0x14(%ebp),%ecx
51b30f:	ba 01 00 00 00       	mov    $0x1,%edx
51b314:	0f 44 d0             	cmove  %eax,%edx
51b317:	83 c1 60             	add    $0x60,%ecx
51b31a:	83 7e 74 10          	cmpl   $0x10,0x74(%esi)
51b31e:	89 55 e4             	mov    %edx,-0x1c(%ebp)
51b321:	8d 56 60             	lea    0x60(%esi),%edx
51b324:	8d 7a 10             	lea    0x10(%edx),%edi
51b327:	72 02                	jb     0x51b32b
51b329:	8b 12                	mov    (%edx),%edx
51b32b:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
51b32f:	8d 59 10             	lea    0x10(%ecx),%ebx
51b332:	72 02                	jb     0x51b336
51b334:	8b 09                	mov    (%ecx),%ecx
51b336:	8b 3f                	mov    (%edi),%edi
51b338:	8b c7                	mov    %edi,%eax
51b33a:	8b 1b                	mov    (%ebx),%ebx
51b33c:	3b df                	cmp    %edi,%ebx
51b33e:	0f 42 c3             	cmovb  %ebx,%eax
51b341:	50                   	push   %eax
51b342:	52                   	push   %edx
51b343:	51                   	push   %ecx
51b344:	e8 b4 70 f1 ff       	call   0x4323fd
51b349:	83 c4 0c             	add    $0xc,%esp
51b34c:	85 c0                	test   %eax,%eax
51b34e:	75 0a                	jne    0x51b35a
51b350:	3b df                	cmp    %edi,%ebx
51b352:	72 06                	jb     0x51b35a
51b354:	77 04                	ja     0x51b35a
51b356:	85 c0                	test   %eax,%eax
51b358:	74 04                	je     0x51b35e
51b35a:	c6 45 e4 01          	movb   $0x1,-0x1c(%ebp)
51b35e:	8b 4d ec             	mov    -0x14(%ebp),%ecx
51b361:	8d 56 78             	lea    0x78(%esi),%edx
51b364:	83 c1 78             	add    $0x78,%ecx
51b367:	8d 7a 10             	lea    0x10(%edx),%edi
51b36a:	83 7a 14 10          	cmpl   $0x10,0x14(%edx)
51b36e:	72 02                	jb     0x51b372
51b370:	8b 12                	mov    (%edx),%edx
51b372:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
51b376:	8d 59 10             	lea    0x10(%ecx),%ebx
51b379:	72 02                	jb     0x51b37d
51b37b:	8b 09                	mov    (%ecx),%ecx
51b37d:	8b 3f                	mov    (%edi),%edi
51b37f:	8b c7                	mov    %edi,%eax
51b381:	8b 1b                	mov    (%ebx),%ebx
51b383:	3b df                	cmp    %edi,%ebx
51b385:	0f 42 c3             	cmovb  %ebx,%eax
51b388:	50                   	push   %eax
51b389:	52                   	push   %edx
51b38a:	51                   	push   %ecx
51b38b:	e8 6d 70 f1 ff       	call   0x4323fd
51b390:	8b c8                	mov    %eax,%ecx
51b392:	83 c4 0c             	add    $0xc,%esp
51b395:	85 c9                	test   %ecx,%ecx
51b397:	75 0d                	jne    0x51b3a6
51b399:	3b fb                	cmp    %ebx,%edi
51b39b:	76 05                	jbe    0x51b3a2
51b39d:	83 c9 ff             	or     $0xffffffff,%ecx
51b3a0:	eb 04                	jmp    0x51b3a6
51b3a2:	1b c9                	sbb    %ecx,%ecx
51b3a4:	f7 d9                	neg    %ecx
51b3a6:	8b 45 e4             	mov    -0x1c(%ebp),%eax
51b3a9:	85 c9                	test   %ecx,%ecx
51b3ab:	8b 4d ec             	mov    -0x14(%ebp),%ecx
51b3ae:	ba 01 00 00 00       	mov    $0x1,%edx
51b3b3:	0f b6 c0             	movzbl %al,%eax
51b3b6:	0f 44 d0             	cmove  %eax,%edx
51b3b9:	81 c1 90 00 00 00    	add    $0x90,%ecx
51b3bf:	83 be a4 00 00 00 10 	cmpl   $0x10,0xa4(%esi)
51b3c6:	89 55 e4             	mov    %edx,-0x1c(%ebp)
51b3c9:	8d 96 90 00 00 00    	lea    0x90(%esi),%edx
51b3cf:	8d 7a 10             	lea    0x10(%edx),%edi
51b3d2:	72 02                	jb     0x51b3d6
51b3d4:	8b 12                	mov    (%edx),%edx
51b3d6:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
51b3da:	8d 59 10             	lea    0x10(%ecx),%ebx
51b3dd:	72 02                	jb     0x51b3e1
51b3df:	8b 09                	mov    (%ecx),%ecx
51b3e1:	8b 3f                	mov    (%edi),%edi
51b3e3:	8b c7                	mov    %edi,%eax
51b3e5:	8b 1b                	mov    (%ebx),%ebx
51b3e7:	3b df                	cmp    %edi,%ebx
51b3e9:	0f 42 c3             	cmovb  %ebx,%eax
51b3ec:	50                   	push   %eax
51b3ed:	52                   	push   %edx
51b3ee:	51                   	push   %ecx
51b3ef:	e8 09 70 f1 ff       	call   0x4323fd
51b3f4:	83 c4 0c             	add    $0xc,%esp
51b3f7:	85 c0                	test   %eax,%eax
51b3f9:	75 0a                	jne    0x51b405
51b3fb:	3b df                	cmp    %edi,%ebx
51b3fd:	72 06                	jb     0x51b405
51b3ff:	77 04                	ja     0x51b405
51b401:	85 c0                	test   %eax,%eax
51b403:	74 04                	je     0x51b409
51b405:	c6 45 e4 01          	movb   $0x1,-0x1c(%ebp)
51b409:	8b 4d ec             	mov    -0x14(%ebp),%ecx
51b40c:	8d 96 ac 00 00 00    	lea    0xac(%esi),%edx
51b412:	81 c1 ac 00 00 00    	add    $0xac,%ecx
51b418:	8d 7a 10             	lea    0x10(%edx),%edi
51b41b:	83 7a 14 10          	cmpl   $0x10,0x14(%edx)
51b41f:	72 02                	jb     0x51b423
51b421:	8b 12                	mov    (%edx),%edx
51b423:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
51b427:	8d 59 10             	lea    0x10(%ecx),%ebx
51b42a:	72 02                	jb     0x51b42e
51b42c:	8b 09                	mov    (%ecx),%ecx
51b42e:	8b 3f                	mov    (%edi),%edi
51b430:	8b c7                	mov    %edi,%eax
51b432:	8b 1b                	mov    (%ebx),%ebx
51b434:	3b df                	cmp    %edi,%ebx
51b436:	0f 42 c3             	cmovb  %ebx,%eax
51b439:	50                   	push   %eax
51b43a:	52                   	push   %edx
51b43b:	51                   	push   %ecx
51b43c:	e8 bc 6f f1 ff       	call   0x4323fd
51b441:	8b c8                	mov    %eax,%ecx
51b443:	83 c4 0c             	add    $0xc,%esp
51b446:	85 c9                	test   %ecx,%ecx
51b448:	75 0d                	jne    0x51b457
51b44a:	3b fb                	cmp    %ebx,%edi
51b44c:	76 05                	jbe    0x51b453
51b44e:	83 c9 ff             	or     $0xffffffff,%ecx
51b451:	eb 04                	jmp    0x51b457
51b453:	1b c9                	sbb    %ecx,%ecx
51b455:	f7 d9                	neg    %ecx
51b457:	8b 45 e4             	mov    -0x1c(%ebp),%eax
51b45a:	85 c9                	test   %ecx,%ecx
51b45c:	0f b6 c0             	movzbl %al,%eax
51b45f:	b9 01 00 00 00       	mov    $0x1,%ecx
51b464:	0f 44 c8             	cmove  %eax,%ecx
51b467:	84 c9                	test   %cl,%cl
51b469:	0f 84 a9 01 00 00    	je     0x51b618
51b46f:	6a 58                	push   $0x58
51b471:	68 20 cf bd 00       	push   $0xbdcf20
51b476:	8d 8d 4c 05 00 00    	lea    0x54c(%ebp),%ecx
51b47c:	c7 85 60 05 00 00 0f 	movl   $0xf,0x560(%ebp)
51b483:	00 00 00
51b486:	c7 85 5c 05 00 00 00 	movl   $0x0,0x55c(%ebp)
51b48d:	00 00 00
51b490:	c6 85 4c 05 00 00 00 	movb   $0x0,0x54c(%ebp)
51b497:	e8 f5 91 ef ff       	call   0x414691
51b49c:	6a 0d                	push   $0xd
51b49e:	68 90 d1 bd 00       	push   $0xbdd190
51b4a3:	8d 8d 34 05 00 00    	lea    0x534(%ebp),%ecx
51b4a9:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
51b4b0:	c7 85 48 05 00 00 0f 	movl   $0xf,0x548(%ebp)
51b4b7:	00 00 00
51b4ba:	c7 85 44 05 00 00 00 	movl   $0x0,0x544(%ebp)
51b4c1:	00 00 00
51b4c4:	c6 85 34 05 00 00 00 	movb   $0x0,0x534(%ebp)