579218:	5e                   	pop    %esi
579219:	5b                   	pop    %ebx
57921a:	c3                   	ret
57921b:	90                   	nop
57921c:	53                   	push   %ebx
57921d:	56                   	push   %esi
57921e:	57                   	push   %edi
57921f:	8b d8                	mov    %eax,%ebx
579221:	8b c3                	mov    %ebx,%eax
579223:	e8 d0 f9 ff ff       	call   0x578bf8
579228:	8b f0                	mov    %eax,%esi
57922a:	85 c0                	test   %eax,%eax
57922c:	7d 05                	jge    0x579233
57922e:	83 c8 ff             	or     $0xffffffff,%eax
579231:	eb 3f                	jmp    0x579272
579233:	b9 02 00 00 00       	mov    $0x2,%ecx
579238:	33 d2                	xor    %edx,%edx
57923a:	8b c3                	mov    %ebx,%eax
57923c:	e8 27 f9 ff ff       	call   0x578b68
579241:	85 c0                	test   %eax,%eax
579243:	7d 05                	jge    0x57924a
579245:	83 c8 ff             	or     $0xffffffff,%eax
579248:	eb 28                	jmp    0x579272
57924a:	8b c3                	mov    %ebx,%eax
57924c:	e8 a7 f9 ff ff       	call   0x578bf8
579251:	8b f8                	mov    %eax,%edi
579253:	85 c0                	test   %eax,%eax
579255:	7d 05                	jge    0x57925c
579257:	83 c8 ff             	or     $0xffffffff,%eax
57925a:	eb 16                	jmp    0x579272
57925c:	33 c9                	xor    %ecx,%ecx
57925e:	8b d6                	mov    %esi,%edx
579260:	8b c3                	mov    %ebx,%eax
579262:	e8 01 f9 ff ff       	call   0x578b68
579267:	85 c0                	test   %eax,%eax
579269:	7d 05                	jge    0x579270
57926b:	83 c8 ff             	or     $0xffffffff,%eax
57926e:	eb 02                	jmp    0x579272
579270:	8b c7                	mov    %edi,%eax
579272:	5f                   	pop    %edi
579273:	5e                   	pop    %esi
579274:	5b                   	pop    %ebx
579275:	c3                   	ret
579276:	90                   	nop
579277:	90                   	nop
579278:	53                   	push   %ebx
579279:	56                   	push   %esi
57927a:	8b d9                	mov    %ecx,%ebx
57927c:	8b f0                	mov    %eax,%esi
57927e:	8b 46 08             	mov    0x8(%esi),%eax
579281:	8b 4e 0c             	mov    0xc(%esi),%ecx
579284:	2b c1                	sub    %ecx,%eax
579286:	3b d8                	cmp    %eax,%ebx
579288:	7f 02                	jg     0x57928c
57928a:	8b c3                	mov    %ebx,%eax
57928c:	8b d8                	mov    %eax,%ebx
57928e:	53                   	push   %ebx
57928f:	8b 0e                	mov    (%esi),%ecx
579291:	8b 46 0c             	mov    0xc(%esi),%eax
579294:	03 c8                	add    %eax,%ecx
579296:	51                   	push   %ecx
579297:	52                   	push   %edx
579298:	e8 27 18 fe ff       	call   0x55aac4
57929d:	83 c4 0c             	add    $0xc,%esp
5792a0:	8b c3                	mov    %ebx,%eax
5792a2:	01 5e 0c             	add    %ebx,0xc(%esi)
5792a5:	5e                   	pop    %esi
5792a6:	5b                   	pop    %ebx
5792a7:	c3                   	ret
5792a8:	53                   	push   %ebx
5792a9:	8b d8                	mov    %eax,%ebx
5792ab:	56                   	push   %esi
5792ac:	57                   	push   %edi
5792ad:	8b 03                	mov    (%ebx),%eax
5792af:	8b f2                	mov    %edx,%esi
5792b1:	85 c0                	test   %eax,%eax
5792b3:	75 17                	jne    0x5792cc
5792b5:	68 fb 03 00 00       	push   $0x3fb
5792ba:	68 e5 2b 6a 00       	push   $0x6a2be5
5792bf:	68 dd 2b 6a 00       	push   $0x6a2bdd
5792c4:	e8 77 18 fe ff       	call   0x55ab40
5792c9:	83 c4 0c             	add    $0xc,%esp
5792cc:	8b d6                	mov    %esi,%edx
5792ce:	8b 03                	mov    (%ebx),%eax
5792d0:	e8 b7 f0 ff ff       	call   0x57838c
5792d5:	8b f8                	mov    %eax,%edi
5792d7:	85 c0                	test   %eax,%eax
5792d9:	75 05                	jne    0x5792e0
5792db:	83 c8 ff             	or     $0xffffffff,%eax
5792de:	eb 07                	jmp    0x5792e7
5792e0:	89 3b                	mov    %edi,(%ebx)
5792e2:	89 73 04             	mov    %esi,0x4(%ebx)
5792e5:	33 c0                	xor    %eax,%eax
5792e7:	5f                   	pop    %edi
5792e8:	5e                   	pop    %esi
5792e9:	5b                   	pop    %ebx
5792ea:	c3                   	ret
5792eb:	90                   	nop
5792ec:	53                   	push   %ebx
5792ed:	56                   	push   %esi
5792ee:	57                   	push   %edi
5792ef:	8b d8                	mov    %eax,%ebx
5792f1:	55                   	push   %ebp
5792f2:	51                   	push   %ecx
5792f3:	89 14 24             	mov    %edx,(%esp)
5792f6:	8b f9                	mov    %ecx,%edi
5792f8:	8b 6b 0c             	mov    0xc(%ebx),%ebp
5792fb:	8b 43 04             	mov    0x4(%ebx),%eax
5792fe:	03 ef                	add    %edi,%ebp
579300:	3b e8                	cmp    %eax,%ebp
579302:	7e 43                	jle    0x579347
579304:	8b 53 10             	mov    0x10(%ebx),%edx
579307:	85 d2                	test   %edx,%edx
579309:	74 3c                	je     0x579347
57930b:	8b f0                	mov    %eax,%esi
57930d:	3b ee                	cmp    %esi,%ebp
57930f:	7e 21                	jle    0x579332
579311:	03 f6                	add    %esi,%esi
579313:	85 f6                	test   %esi,%esi
579315:	7d 17                	jge    0x57932e
579317:	68 11 04 00 00       	push   $0x411
57931c:	68 02 2c 6a 00       	push   $0x6a2c02
579321:	68 f2 2b 6a 00       	push   $0x6a2bf2
579326:	e8 15 18 fe ff       	call   0x55ab40
57932b:	83 c4 0c             	add    $0xc,%esp
57932e:	3b ee                	cmp    %esi,%ebp
579330:	7f df                	jg     0x579311
579332:	8b d6                	mov    %esi,%edx
579334:	8b c3                	mov    %ebx,%eax
579336:	e8 6d ff ff ff       	call   0x5792a8
57933b:	85 c0                	test   %eax,%eax
57933d:	74 08                	je     0x579347
57933f:	83 c8 ff             	or     $0xffffffff,%eax
579342:	e9 98 00 00 00       	jmp    0x5793df
579347:	8b 43 0c             	mov    0xc(%ebx),%eax
57934a:	8b 53 08             	mov    0x8(%ebx),%edx
57934d:	3b c2                	cmp    %edx,%eax
57934f:	7e 39                	jle    0x57938a
579351:	8b 4b 04             	mov    0x4(%ebx),%ecx
579354:	3b c1                	cmp    %ecx,%eax
579356:	7d 05                	jge    0x57935d
579358:	8b 73 0c             	mov    0xc(%ebx),%esi
57935b:	eb 03                	jmp    0x579360
57935d:	8b 73 04             	mov    0x4(%ebx),%esi
579360:	8b 53 08             	mov    0x8(%ebx),%edx
579363:	2b f2                	sub    %edx,%esi
579365:	85 f6                	test   %esi,%esi
579367:	7e 13                	jle    0x57937c
579369:	56                   	push   %esi
57936a:	6a 00                	push   $0x0
57936c:	8b 03                	mov    (%ebx),%eax
57936e:	03 c2                	add    %edx,%eax
579370:	50                   	push   %eax
579371:	e8 32 17 fe ff       	call   0x55aaa8
579376:	83 c4 0c             	add    $0xc,%esp
579379:	01 73 08             	add    %esi,0x8(%ebx)
57937c:	8b 4b 0c             	mov    0xc(%ebx),%ecx
57937f:	8b 43 08             	mov    0x8(%ebx),%eax
579382:	3b c8                	cmp    %eax,%ecx
579384:	74 04                	je     0x57938a
579386:	33 c0                	xor    %eax,%eax
579388:	eb 55                	jmp    0x5793df
57938a:	8b 73 04             	mov    0x4(%ebx),%esi
57938d:	8b 43 0c             	mov    0xc(%ebx),%eax
579390:	2b f0                	sub    %eax,%esi
579392:	3b fe                	cmp    %esi,%edi
579394:	7f 02                	jg     0x579398
579396:	8b f7                	mov    %edi,%esi
579398:	85 f6                	test   %esi,%esi
57939a:	7e 19                	jle    0x5793b5
57939c:	56                   	push   %esi
57939d:	8b 44 24 04          	mov    0x4(%esp),%eax
5793a1:	50                   	push   %eax
5793a2:	8b 13                	mov    (%ebx),%edx
5793a4:	8b 4b 0c             	mov    0xc(%ebx),%ecx
5793a7:	03 d1                	add    %ecx,%edx
5793a9:	52                   	push   %edx
5793aa:	e8 15 17 fe ff       	call   0x55aac4
5793af:	83 c4 0c             	add    $0xc,%esp
5793b2:	01 73 0c             	add    %esi,0xc(%ebx)
5793b5:	8b 43 0c             	mov    0xc(%ebx),%eax
5793b8:	8b 53 08             	mov    0x8(%ebx),%edx
5793bb:	3b c2                	cmp    %edx,%eax
5793bd:	7e 03                	jle    0x5793c2
5793bf:	89 43 08             	mov    %eax,0x8(%ebx)
5793c2:	3b fe                	cmp    %esi,%edi
5793c4:	74 17                	je     0x5793dd
5793c6:	68 2d 04 00 00       	push   $0x42d
5793cb:	68 1a 2c 6a 00       	push   $0x6a2c1a
5793d0:	68 0f 2c 6a 00       	push   $0x6a2c0f
5793d5:	e8 66 17 fe ff       	call   0x55ab40
5793da:	83 c4 0c             	add    $0xc,%esp
5793dd:	8b c6                	mov    %esi,%eax
5793df:	5a                   	pop    %edx
5793e0:	5d                   	pop    %ebp
5793e1:	5f                   	pop    %edi
5793e2:	5e                   	pop    %esi
5793e3:	5b                   	pop    %ebx
5793e4:	c3                   	ret
5793e5:	90                   	nop
5793e6:	90                   	nop
5793e7:	90                   	nop
5793e8:	53                   	push   %ebx
5793e9:	56                   	push   %esi
5793ea:	8b d8                	mov    %eax,%ebx
5793ec:	83 e9 01             	sub    $0x1,%ecx
5793ef:	72 07                	jb     0x5793f8
5793f1:	74 10                	je     0x579403
5793f3:	49                   	dec    %ecx
5793f4:	74 06                	je     0x5793fc
5793f6:	eb 12                	jmp    0x57940a
5793f8:	8b f2                	mov    %edx,%esi
5793fa:	eb 13                	jmp    0x57940f
5793fc:	8b 73 08             	mov    0x8(%ebx),%esi
5793ff:	2b f2                	sub    %edx,%esi
579401:	eb 0c                	jmp    0x57940f
579403:	8b 73 0c             	mov    0xc(%ebx),%esi
579406:	03 f2                	add    %edx,%esi
579408:	eb 05                	jmp    0x57940f
57940a:	e8 39 17 fe ff       	call   0x55ab48
57940f:	85 f6                	test   %esi,%esi
579411:	7d 06                	jge    0x579419
579413:	83 c8 ff             	or     $0xffffffff,%eax
579416:	5e                   	pop    %esi
579417:	5b                   	pop    %ebx
579418:	c3                   	ret
579419:	8b c6                	mov    %esi,%eax
57941b:	89 43 0c             	mov    %eax,0xc(%ebx)
57941e:	5e                   	pop    %esi
57941f:	5b                   	pop    %ebx
579420:	c3                   	ret
579421:	90                   	nop
579422:	90                   	nop
579423:	90                   	nop
579424:	53                   	push   %ebx
579425:	56                   	push   %esi
579426:	8b f0                	mov    %eax,%esi
579428:	8b de                	mov    %esi,%ebx
57942a:	8b 43 14             	mov    0x14(%ebx),%eax
57942d:	85 c0                	test   %eax,%eax
57942f:	74 11                	je     0x579442
579431:	8b 13                	mov    (%ebx),%edx
579433:	85 d2                	test   %edx,%edx
579435:	74 0b                	je     0x579442
579437:	8b 03                	mov    (%ebx),%eax
579439:	e8 46 ef ff ff       	call   0x578384
57943e:	33 d2                	xor    %edx,%edx
579440:	89 13                	mov    %edx,(%ebx)
579442:	8b c6                	mov    %esi,%eax
579444:	e8 3b ef ff ff       	call   0x578384
579449:	33 c0                	xor    %eax,%eax
57944b:	5e                   	pop    %esi
57944c:	5b                   	pop    %ebx
57944d:	c3                   	ret
57944e:	90                   	nop
57944f:	90                   	nop
579450:	8b 00                	mov    (%eax),%eax
579452:	51                   	push   %ecx
579453:	52                   	push   %edx
579454:	50                   	push   %eax
579455:	e8 b6 19 fe ff       	call   0x55ae10
57945a:	83 c4 0c             	add    $0xc,%esp
57945d:	c3                   	ret
57945e:	90                   	nop
57945f:	90                   	nop
579460:	8b 00                	mov    (%eax),%eax
579462:	51                   	push   %ecx
579463:	52                   	push   %edx
579464:	50                   	push   %eax
579465:	e8 e6 19 fe ff       	call   0x55ae50
57946a:	83 c4 0c             	add    $0xc,%esp
57946d:	c3                   	ret
57946e:	90                   	nop
57946f:	90                   	nop
579470:	8b 00                	mov    (%eax),%eax
579472:	51                   	push   %ecx
579473:	52                   	push   %edx
579474:	50                   	push   %eax
579475:	e8 ee 19 fe ff       	call   0x55ae68
57947a:	83 c4 0c             	add    $0xc,%esp
57947d:	c3                   	ret
57947e:	90                   	nop
57947f:	90                   	nop
579480:	53                   	push   %ebx
579481:	8b 18                	mov    (%eax),%ebx
579483:	e8 fc ee ff ff       	call   0x578384
579488:	53                   	push   %ebx
579489:	e8 9a 19 fe ff       	call   0x55ae28
57948e:	59                   	pop    %ecx
57948f:	5b                   	pop    %ebx
579490:	c3                   	ret
579491:	90                   	nop
579492:	90                   	nop
579493:	90                   	nop
579494:	53                   	push   %ebx
579495:	56                   	push   %esi
579496:	57                   	push   %edi
579497:	8b f9                	mov    %ecx,%edi
579499:	8b f2                	mov    %edx,%esi
57949b:	8b d8                	mov    %eax,%ebx
57949d:	53                   	push   %ebx
57949e:	57                   	push   %edi
57949f:	6a 01                	push   $0x1
5794a1:	56                   	push   %esi
5794a2:	e8 35 1a fe ff       	call   0x55aedc
5794a7:	83 c4 10             	add    $0x10,%esp
5794aa:	5f                   	pop    %edi
5794ab:	5e                   	pop    %esi
5794ac:	5b                   	pop    %ebx
5794ad:	c3                   	ret
5794ae:	90                   	nop
5794af:	90                   	nop
5794b0:	53                   	push   %ebx
5794b1:	56                   	push   %esi
5794b2:	57                   	push   %edi
5794b3:	8b f9                	mov    %ecx,%edi
5794b5:	8b f2                	mov    %edx,%esi
5794b7:	8b d8                	mov    %eax,%ebx
5794b9:	53                   	push   %ebx
5794ba:	57                   	push   %edi
5794bb:	6a 01                	push   $0x1
5794bd:	56                   	push   %esi
5794be:	e8 1d 1a fe ff       	call   0x55aee0
5794c3:	83 c4 10             	add    $0x10,%esp
5794c6:	5f                   	pop    %edi
5794c7:	5e                   	pop    %esi
5794c8:	5b                   	pop    %ebx
5794c9:	c3                   	ret
5794ca:	90                   	nop
5794cb:	90                   	nop
5794cc:	51                   	push   %ecx
5794cd:	52                   	push   %edx
5794ce:	50                   	push   %eax
5794cf:	e8 18 1a fe ff       	call   0x55aeec
5794d4:	83 c4 0c             	add    $0xc,%esp
5794d7:	c3                   	ret
5794d8:	50                   	push   %eax
5794d9:	e8 12 1a fe ff       	call   0x55aef0
5794de:	59                   	pop    %ecx
5794df:	c3                   	ret
5794e0:	53                   	push   %ebx
5794e1:	56                   	push   %esi
5794e2:	57                   	push   %edi
5794e3:	8b f0                	mov    %eax,%esi
5794e5:	56                   	push   %esi
5794e6:	e8 85 16 fe ff       	call   0x55ab70
5794eb:	59                   	pop    %ecx
5794ec:	8b f8                	mov    %eax,%edi
5794ee:	47                   	inc    %edi
5794ef:	8b c7                	mov    %edi,%eax