5841b4:	0f 85 2b 01 00 00    	jne    0x5842e5
5841ba:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
5841c1:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
5841c8:	e9 18 01 00 00       	jmp    0x5842e5
5841cd:	3b df                	cmp    %edi,%ebx
5841cf:	0f 84 10 01 00 00    	je     0x5842e5
5841d5:	2b fb                	sub    %ebx,%edi
5841d7:	33 c9                	xor    %ecx,%ecx
5841d9:	85 ff                	test   %edi,%edi
5841db:	7e 0e                	jle    0x5841eb
5841dd:	0f 1f 00             	nopl   (%eax)
5841e0:	8a 04 19             	mov    (%ecx,%ebx,1),%al
5841e3:	88 04 0a             	mov    %al,(%edx,%ecx,1)
5841e6:	41                   	inc    %ecx
5841e7:	3b cf                	cmp    %edi,%ecx
5841e9:	7c f5                	jl     0x5841e0
5841eb:	89 7e 08             	mov    %edi,0x8(%esi)
5841ee:	e9 f2 00 00 00       	jmp    0x5842e5
5841f3:	81 fd 00 04 00 00    	cmp    $0x400,%ebp
5841f9:	7d 0a                	jge    0x584205
5841fb:	83 7e 18 00          	cmpl   $0x0,0x18(%esi)
5841ff:	0f 8f e0 00 00 00    	jg     0x5842e5
584205:	6a ff                	push   $0xffffffff
584207:	ff 74 24 30          	push   0x30(%esp)
58420b:	8d be fe 05 00 00    	lea    0x5fe(%esi),%edi
584211:	8d 5e 20             	lea    0x20(%esi),%ebx
584214:	e8 87 52 f7 ff       	call   0x4f94a0
584219:	83 c4 08             	add    $0x8,%esp
58421c:	a9 00 01 00 00       	test   $0x100,%eax
584221:	74 60                	je     0x584283
584223:	8b dd                	mov    %ebp,%ebx
584225:	8d 46 20             	lea    0x20(%esi),%eax
584228:	83 e3 fc             	and    $0xfffffffc,%ebx
58422b:	53                   	push   %ebx
58422c:	57                   	push   %edi
58422d:	50                   	push   %eax
58422e:	e8 7d 70 fe ff       	call   0x56b2b0
584233:	83 c4 0c             	add    $0xc,%esp
584236:	8b f8                	mov    %eax,%edi
584238:	83 fb 02             	cmp    $0x2,%ebx
58423b:	7e 16                	jle    0x584253
58423d:	80 bc 33 fd 05 00 00 	cmpb   $0x3d,0x5fd(%ebx,%esi,1)
584244:	3d
584245:	75 0c                	jne    0x584253
584247:	4f                   	dec    %edi
584248:	80 bc 33 fc 05 00 00 	cmpb   $0x3d,0x5fc(%ebx,%esi,1)
58424f:	3d
584250:	75 01                	jne    0x584253
584252:	4f                   	dec    %edi
584253:	3b dd                	cmp    %ebp,%ebx
584255:	74 1e                	je     0x584275
584257:	2b eb                	sub    %ebx,%ebp
584259:	8d 86 fe 05 00 00    	lea    0x5fe(%esi),%eax
58425f:	03 c3                	add    %ebx,%eax
584261:	55                   	push   %ebp
584262:	50                   	push   %eax
584263:	8d 86 fe 05 00 00    	lea    0x5fe(%esi),%eax
584269:	50                   	push   %eax
58426a:	e8 61 eb 04 00       	call   0x5d2dd0
58426f:	83 c4 0c             	add    $0xc,%esp
584272:	89 6e 08             	mov    %ebp,0x8(%esi)
584275:	33 c0                	xor    %eax,%eax
584277:	8d 5e 20             	lea    0x20(%esi),%ebx
58427a:	85 ff                	test   %edi,%edi
58427c:	0f 4f c7             	cmovg  %edi,%eax
58427f:	89 06                	mov    %eax,(%esi)
584281:	eb 18                	jmp    0x58429b
584283:	55                   	push   %ebp
584284:	57                   	push   %edi
584285:	56                   	push   %esi
584286:	53                   	push   %ebx
584287:	ff 76 1c             	push   0x1c(%esi)
58428a:	e8 b1 70 fe ff       	call   0x56b340
58428f:	83 c4 14             	add    $0x14,%esp
584292:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
584299:	8b f8                	mov    %eax,%edi
58429b:	89 7e 18             	mov    %edi,0x18(%esi)
58429e:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
5842a5:	85 ff                	test   %edi,%edi
5842a7:	78 6a                	js     0x584313
5842a9:	8b 3e                	mov    (%esi),%edi
5842ab:	3b 7c 24 14          	cmp    0x14(%esp),%edi
5842af:	8b 6c 24 30          	mov    0x30(%esp),%ebp
5842b3:	0f 4f 7c 24 14       	cmovg  0x14(%esp),%edi
5842b8:	57                   	push   %edi
5842b9:	53                   	push   %ebx
5842ba:	55                   	push   %ebp
5842bb:	e8 10 eb 04 00       	call   0x5d2dd0
5842c0:	01 7c 24 1c          	add    %edi,0x1c(%esp)
5842c4:	83 c4 0c             	add    $0xc,%esp
5842c7:	89 7e 04             	mov    %edi,0x4(%esi)
5842ca:	3b 3e                	cmp    (%esi),%edi
5842cc:	75 0d                	jne    0x5842db
5842ce:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
5842d4:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
5842db:	29 7c 24 14          	sub    %edi,0x14(%esp)
5842df:	03 ef                	add    %edi,%ebp
5842e1:	89 6c 24 30          	mov    %ebp,0x30(%esp)
5842e5:	83 7c 24 14 00       	cmpl   $0x0,0x14(%esp)
5842ea:	0f 8f 55 fd ff ff    	jg     0x584045
5842f0:	8b 6c 24 18          	mov    0x18(%esp),%ebp
5842f4:	8b 5c 24 10          	mov    0x10(%esp),%ebx
5842f8:	ff 74 24 2c          	push   0x2c(%esp)
5842fc:	e8 0f 48 f7 ff       	call   0x4f8b10
584301:	83 c4 04             	add    $0x4,%esp
584304:	85 db                	test   %ebx,%ebx
584306:	0f 44 dd             	cmove  %ebp,%ebx
584309:	8b c3                	mov    %ebx,%eax
58430b:	5f                   	pop    %edi
58430c:	5e                   	pop    %esi
58430d:	5d                   	pop    %ebp
58430e:	5b                   	pop    %ebx
58430f:	83 c4 18             	add    $0x18,%esp
584312:	c3                   	ret
584313:	33 ed                	xor    %ebp,%ebp
584315:	89 2e                	mov    %ebp,(%esi)
584317:	eb db                	jmp    0x5842f4
584319:	5f                   	pop    %edi
58431a:	5e                   	pop    %esi
58431b:	5d                   	pop    %ebp
58431c:	33 c0                	xor    %eax,%eax
58431e:	5b                   	pop    %ebx
58431f:	83 c4 18             	add    $0x18,%esp
584322:	c3                   	ret
584323:	cc                   	int3
584324:	cc                   	int3
584325:	cc                   	int3
584326:	cc                   	int3
584327:	cc                   	int3
584328:	cc                   	int3
584329:	cc                   	int3
58432a:	cc                   	int3
58432b:	cc                   	int3
58432c:	cc                   	int3
58432d:	cc                   	int3
58432e:	cc                   	int3
58432f:	cc                   	int3
584330:	8b 54 24 08          	mov    0x8(%esp),%edx
584334:	8b c2                	mov    %edx,%eax
584336:	56                   	push   %esi
584337:	8d 70 01             	lea    0x1(%eax),%esi
58433a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
584340:	8a 08                	mov    (%eax),%cl
584342:	40                   	inc    %eax
584343:	84 c9                	test   %cl,%cl
584345:	75 f9                	jne    0x584340
584347:	2b c6                	sub    %esi,%eax
584349:	50                   	push   %eax
58434a:	52                   	push   %edx
58434b:	ff 74 24 10          	push   0x10(%esp)
58434f:	e8 8c f7 ff ff       	call   0x583ae0
584354:	83 c4 0c             	add    $0xc,%esp
584357:	5e                   	pop    %esi
584358:	c3                   	ret
584359:	cc                   	int3
58435a:	cc                   	int3
58435b:	cc                   	int3
58435c:	cc                   	int3
58435d:	cc                   	int3
58435e:	cc                   	int3
58435f:	cc                   	int3
584360:	53                   	push   %ebx
584361:	8b 5c 24 08          	mov    0x8(%esp),%ebx
584365:	55                   	push   %ebp
584366:	56                   	push   %esi
584367:	57                   	push   %edi
584368:	53                   	push   %ebx
584369:	bf 01 00 00 00       	mov    $0x1,%edi
58436e:	e8 2d c4 f6 ff       	call   0x4f07a0
584373:	53                   	push   %ebx
584374:	8b f0                	mov    %eax,%esi
584376:	e8 a5 4e f7 ff       	call   0x4f9220
58437b:	83 c4 08             	add    $0x8,%esp
58437e:	8b e8                	mov    %eax,%ebp
584380:	85 f6                	test   %esi,%esi
584382:	0f 84 c3 01 00 00    	je     0x58454b
584388:	85 ed                	test   %ebp,%ebp
58438a:	0f 84 bb 01 00 00    	je     0x58454b
584390:	8b 54 24 18          	mov    0x18(%esp),%edx
584394:	8d 4a ff             	lea    -0x1(%edx),%ecx
584397:	83 f9 64             	cmp    $0x64,%ecx
58439a:	77 1b                	ja     0x5843b7
58439c:	0f b6 81 74 45 58 00 	movzbl 0x584574(%ecx),%eax
5843a3:	ff 24 85 54 45 58 00 	jmp    *0x584554(,%eax,4)
5843aa:	89 7e 18             	mov    %edi,0x18(%esi)
5843ad:	89 7e 14             	mov    %edi,0x14(%esi)
5843b0:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
5843b7:	ff 74 24 20          	push   0x20(%esp)
5843bb:	ff 74 24 20          	push   0x20(%esp)
5843bf:	52                   	push   %edx
5843c0:	55                   	push   %ebp
5843c1:	e8 6a 47 f7 ff       	call   0x4f8b30
5843c6:	8b f8                	mov    %eax,%edi
5843c8:	83 c4 10             	add    $0x10,%esp
5843cb:	8b c7                	mov    %edi,%eax
5843cd:	5f                   	pop    %edi
5843ce:	5e                   	pop    %esi
5843cf:	5d                   	pop    %ebp
5843d0:	5b                   	pop    %ebx
5843d1:	c3                   	ret
5843d2:	83 7e 18 00          	cmpl   $0x0,0x18(%esi)
5843d6:	7e f3                	jle    0x5843cb
5843d8:	eb dd                	jmp    0x5843b7
5843da:	8b 3e                	mov    (%esi),%edi
5843dc:	8b 46 04             	mov    0x4(%esi),%eax
5843df:	3b f8                	cmp    %eax,%edi
5843e1:	7d 1c                	jge    0x5843ff
5843e3:	68 da 01 00 00       	push   $0x1da
5843e8:	68 b8 d1 65 00       	push   $0x65d1b8
5843ed:	68 d0 d1 65 00       	push   $0x65d1d0
5843f2:	e8 39 e1 f6 ff       	call   0x4f2530
5843f7:	8b 3e                	mov    (%esi),%edi
5843f9:	83 c4 0c             	add    $0xc,%esp
5843fc:	8b 46 04             	mov    0x4(%esi),%eax
5843ff:	2b f8                	sub    %eax,%edi
584401:	75 20                	jne    0x584423
584403:	39 7e 10             	cmp    %edi,0x10(%esi)
584406:	74 1f                	je     0x584427
584408:	ff 76 1c             	push   0x1c(%esi)
58440b:	e8 b0 bc f6 ff       	call   0x4f00c0
584410:	83 c4 04             	add    $0x4,%esp
584413:	85 c0                	test   %eax,%eax
584415:	74 10                	je     0x584427
584417:	bf 01 00 00 00       	mov    $0x1,%edi
58441c:	8b c7                	mov    %edi,%eax
58441e:	5f                   	pop    %edi
58441f:	5e                   	pop    %esi
584420:	5d                   	pop    %ebp
584421:	5b                   	pop    %ebx
584422:	c3                   	ret
584423:	85 ff                	test   %edi,%edi
584425:	7f a4                	jg     0x5843cb
584427:	ff 74 24 20          	push   0x20(%esp)
58442b:	ff 74 24 20          	push   0x20(%esp)
58442f:	ff 74 24 20          	push   0x20(%esp)
584433:	55                   	push   %ebp
584434:	e8 f7 46 f7 ff       	call   0x4f8b30
584439:	83 c4 10             	add    $0x10,%esp
58443c:	8b f8                	mov    %eax,%edi
58443e:	5f                   	pop    %edi
58443f:	5e                   	pop    %esi
584440:	5d                   	pop    %ebp
584441:	5b                   	pop    %ebx
584442:	c3                   	ret
584443:	8b 3e                	mov    (%esi),%edi
584445:	8b 46 04             	mov    0x4(%esi),%eax
584448:	3b f8                	cmp    %eax,%edi
58444a:	7d 20                	jge    0x58446c
58444c:	68 e3 01 00 00       	push   $0x1e3
584451:	68 b8 d1 65 00       	push   $0x65d1b8
584456:	68 d0 d1 65 00       	push   $0x65d1d0
58445b:	e8 d0 e0 f6 ff       	call   0x4f2530
584460:	8b 3e                	mov    (%esi),%edi
584462:	83 c4 0c             	add    $0xc,%esp
584465:	8b 46 04             	mov    0x4(%esi),%eax
584468:	8b 54 24 18          	mov    0x18(%esp),%edx
58446c:	2b f8                	sub    %eax,%edi
58446e:	85 ff                	test   %edi,%edi
584470:	0f 8f 55 ff ff ff    	jg     0x5843cb
584476:	e9 3c ff ff ff       	jmp    0x5843b7
58447b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
584480:	8b 06                	mov    (%esi),%eax
584482:	3b 46 04             	cmp    0x4(%esi),%eax
584485:	74 1c                	je     0x5844a3
584487:	6a 00                	push   $0x0
584489:	6a 00                	push   $0x0
58448b:	53                   	push   %ebx
58448c:	e8 4f f6 ff ff       	call   0x583ae0
584491:	83 c4 0c             	add    $0xc,%esp
584494:	85 c0                	test   %eax,%eax
584496:	0f 88 b1 00 00 00    	js     0x58454d
58449c:	8b 06                	mov    (%esi),%eax
58449e:	3b 46 04             	cmp    0x4(%esi),%eax
5844a1:	75 e4                	jne    0x584487
5844a3:	6a ff                	push   $0xffffffff
5844a5:	53                   	push   %ebx
5844a6:	e8 f5 4f f7 ff       	call   0x4f94a0
5844ab:	83 c4 08             	add    $0x8,%esp
5844ae:	a9 00 01 00 00       	test   $0x100,%eax
5844b3:	74 31                	je     0x5844e6
5844b5:	8b 46 08             	mov    0x8(%esi),%eax
5844b8:	85 c0                	test   %eax,%eax
5844ba:	0f 84 67 ff ff ff    	je     0x584427
5844c0:	50                   	push   %eax
5844c1:	8d 86 fe 05 00 00    	lea    0x5fe(%esi),%eax
5844c7:	50                   	push   %eax
5844c8:	8d 46 20             	lea    0x20(%esi),%eax
5844cb:	50                   	push   %eax
5844cc:	e8 9f 70 fe ff       	call   0x56b570
5844d1:	83 c4 0c             	add    $0xc,%esp
5844d4:	89 06                	mov    %eax,(%esi)
5844d6:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
5844dd:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
5844e4:	eb 9a                	jmp    0x584480
5844e6:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
5844ea:	0f 84 37 ff ff ff    	je     0x584427
5844f0:	ff 76 1c             	push   0x1c(%esi)
5844f3:	e8 c8 bb f6 ff       	call   0x4f00c0
5844f8:	83 c4 04             	add    $0x4,%esp
5844fb:	85 c0                	test   %eax,%eax
5844fd:	0f 84 24 ff ff ff    	je     0x584427
584503:	56                   	push   %esi
584504:	8d 46 20             	lea    0x20(%esi),%eax
584507:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
58450e:	50                   	push   %eax
58450f:	ff 76 1c             	push   0x1c(%esi)
584512:	e8 79 70 fe ff       	call   0x56b590
584517:	83 c4 0c             	add    $0xc,%esp
58451a:	e9 61 ff ff ff       	jmp    0x584480
58451f:	6a 0f                	push   $0xf
584521:	53                   	push   %ebx
584522:	e8 d9 45 f7 ff       	call   0x4f8b00
584527:	ff 74 24 28          	push   0x28(%esp)
58452b:	ff 74 24 28          	push   0x28(%esp)
58452f:	ff 74 24 28          	push   0x28(%esp)
584533:	55                   	push   %ebp
584534:	e8 f7 45 f7 ff       	call   0x4f8b30
584539:	53                   	push   %ebx
58453a:	8b f8                	mov    %eax,%edi
58453c:	e8 cf 45 f7 ff       	call   0x4f8b10
584541:	83 c4 1c             	add    $0x1c,%esp
584544:	8b c7                	mov    %edi,%eax
584546:	5f                   	pop    %edi
584547:	5e                   	pop    %esi
584548:	5d                   	pop    %ebp
584549:	5b                   	pop    %ebx
58454a:	c3                   	ret
58454b:	33 c0                	xor    %eax,%eax
58454d:	5f                   	pop    %edi
58454e:	5e                   	pop    %esi
58454f:	5d                   	pop    %ebp
584550:	5b                   	pop    %ebx
584551:	c3                   	ret
584552:	66 90                	xchg   %ax,%ax
584554:	aa                   	stos   %al,%es:(%edi)
584555:	43                   	inc    %ebx
584556:	58                   	pop    %eax
584557:	00 d2                	add    %dl,%dl
584559:	43                   	inc    %ebx
58455a:	58                   	pop    %eax
58455b:	00 43 44             	add    %al,0x44(%ebx)
58455e:	58                   	pop    %eax
58455f:	00 80 44 58 00 cb    	add    %al,-0x34ffa7bc(%eax)
584565:	43                   	inc    %ebx
584566:	58                   	pop    %eax
584567:	00 da                	add    %bl,%dl
584569:	43                   	inc    %ebx
58456a:	58                   	pop    %eax
58456b:	00 1f                	add    %bl,(%edi)
58456d:	45                   	inc    %ebp