581422:	5f                   	pop    %edi
581423:	8b c6                	mov    %esi,%eax
581425:	5e                   	pop    %esi
581426:	5b                   	pop    %ebx
581427:	8b 4c 24 50          	mov    0x50(%esp),%ecx
58142b:	33 cc                	xor    %esp,%ecx
58142d:	e8 f4 05 05 00       	call   0x5d1a26
581432:	83 c4 54             	add    $0x54,%esp
581435:	c3                   	ret
581436:	e8 55 a4 f6 ff       	call   0x4eb890
58143b:	8b f0                	mov    %eax,%esi
58143d:	85 f6                	test   %esi,%esi
58143f:	75 29                	jne    0x58146a
581441:	6a 45                	push   $0x45
581443:	68 38 be 65 00       	push   $0x65be38
581448:	6a 41                	push   $0x41
58144a:	6a 73                	push   $0x73
58144c:	6a 22                	push   $0x22
58144e:	e8 2d 7b f5 ff       	call   0x4d8f80
581453:	83 c4 14             	add    $0x14,%esp
581456:	33 c0                	xor    %eax,%eax
581458:	5f                   	pop    %edi
581459:	5e                   	pop    %esi
58145a:	5b                   	pop    %ebx
58145b:	8b 4c 24 50          	mov    0x50(%esp),%ecx
58145f:	33 cc                	xor    %esp,%ecx
581461:	e8 c0 05 05 00       	call   0x5d1a26
581466:	83 c4 54             	add    $0x54,%esp
581469:	c3                   	ret
58146a:	85 ff                	test   %edi,%edi
58146c:	0f 84 85 00 00 00    	je     0x5814f7
581472:	83 3f 01             	cmpl   $0x1,(%edi)
581475:	74 ab                	je     0x581422
581477:	8b 47 0c             	mov    0xc(%edi),%eax
58147a:	85 c0                	test   %eax,%eax
58147c:	75 0c                	jne    0x58148a
58147e:	8b 47 08             	mov    0x8(%edi),%eax
581481:	85 c0                	test   %eax,%eax
581483:	74 72                	je     0x5814f7
581485:	8b 40 2c             	mov    0x2c(%eax),%eax
581488:	eb 03                	jmp    0x58148d
58148a:	8b 40 14             	mov    0x14(%eax),%eax
58148d:	85 c0                	test   %eax,%eax
58148f:	75 04                	jne    0x581495
581491:	6a 57                	push   $0x57
581493:	eb 64                	jmp    0x5814f9
581495:	50                   	push   %eax
581496:	6a 00                	push   $0x0
581498:	8d 44 24 18          	lea    0x18(%esp),%eax
58149c:	50                   	push   %eax
58149d:	8d 44 24 20          	lea    0x20(%esp),%eax
5814a1:	50                   	push   %eax
5814a2:	6a 00                	push   $0x0
5814a4:	e8 27 a9 f5 ff       	call   0x4dbdd0
5814a9:	83 c4 14             	add    $0x14,%esp
5814ac:	6a 00                	push   $0x0
5814ae:	e8 5d 50 f9 ff       	call   0x516510
5814b3:	50                   	push   %eax
5814b4:	8d 44 24 20          	lea    0x20(%esp),%eax
5814b8:	50                   	push   %eax
5814b9:	8d 44 24 28          	lea    0x28(%esp),%eax
5814bd:	50                   	push   %eax
5814be:	ff 74 24 20          	push   0x20(%esp)
5814c2:	ff 74 24 28          	push   0x28(%esp)
5814c6:	e8 15 95 f9 ff       	call   0x51a9e0
5814cb:	83 c4 18             	add    $0x18,%esp
5814ce:	85 c0                	test   %eax,%eax
5814d0:	74 3a                	je     0x58150c
5814d2:	ff 74 24 18          	push   0x18(%esp)
5814d6:	8d 44 24 20          	lea    0x20(%esp),%eax
5814da:	50                   	push   %eax
5814db:	56                   	push   %esi
5814dc:	e8 3f a4 f8 ff       	call   0x50b920
5814e1:	83 c4 0c             	add    $0xc,%esp
5814e4:	85 c0                	test   %eax,%eax
5814e6:	0f 85 36 ff ff ff    	jne    0x581422
5814ec:	6a 61                	push   $0x61
5814ee:	68 38 be 65 00       	push   $0x65be38
5814f3:	6a 41                	push   $0x41
5814f5:	eb 09                	jmp    0x581500
5814f7:	6a 4d                	push   $0x4d
5814f9:	68 38 be 65 00       	push   $0x65be38
5814fe:	6a 72                	push   $0x72
581500:	6a 73                	push   $0x73
581502:	6a 22                	push   $0x22
581504:	e8 77 7a f5 ff       	call   0x4d8f80
581509:	83 c4 14             	add    $0x14,%esp
58150c:	56                   	push   %esi
58150d:	e8 6e a2 f6 ff       	call   0x4eb780
581512:	8b 4c 24 60          	mov    0x60(%esp),%ecx
581516:	83 c4 04             	add    $0x4,%esp
581519:	33 c0                	xor    %eax,%eax
58151b:	5f                   	pop    %edi
58151c:	5e                   	pop    %esi
58151d:	5b                   	pop    %ebx
58151e:	33 cc                	xor    %esp,%ecx
581520:	e8 01 05 05 00       	call   0x5d1a26
581525:	83 c4 54             	add    $0x54,%esp
581528:	c3                   	ret
581529:	cc                   	int3
58152a:	cc                   	int3
58152b:	cc                   	int3
58152c:	cc                   	int3
58152d:	cc                   	int3
58152e:	cc                   	int3
58152f:	cc                   	int3
581530:	56                   	push   %esi
581531:	57                   	push   %edi
581532:	8b 7c 24 10          	mov    0x10(%esp),%edi
581536:	8b 07                	mov    (%edi),%eax
581538:	85 c0                	test   %eax,%eax
58153a:	74 2c                	je     0x581568
58153c:	ff 30                	push   (%eax)
58153e:	ff 70 08             	push   0x8(%eax)
581541:	e8 4a 0c f6 ff       	call   0x4e2190
581546:	8b f0                	mov    %eax,%esi
581548:	8d 44 24 1c          	lea    0x1c(%esp),%eax
58154c:	50                   	push   %eax
58154d:	56                   	push   %esi
58154e:	68 b0 8a 65 00       	push   $0x658ab0
581553:	e8 d8 78 fe ff       	call   0x568e30
581558:	6a 2e                	push   $0x2e
58155a:	68 90 be 65 00       	push   $0x65be90
58155f:	56                   	push   %esi
581560:	e8 1b f2 f5 ff       	call   0x4e0780
581565:	83 c4 20             	add    $0x20,%esp
581568:	8b 47 04             	mov    0x4(%edi),%eax
58156b:	85 c0                	test   %eax,%eax
58156d:	74 15                	je     0x581584
58156f:	ff 74 24 14          	push   0x14(%esp)
581573:	50                   	push   %eax
581574:	6a 00                	push   $0x0
581576:	e8 45 87 ff ff       	call   0x579cc0
58157b:	83 c4 0c             	add    $0xc,%esp
58157e:	89 44 24 14          	mov    %eax,0x14(%esp)
581582:	eb 04                	jmp    0x581588
581584:	8b 44 24 14          	mov    0x14(%esp),%eax
581588:	8b 4f 08             	mov    0x8(%edi),%ecx
58158b:	85 c9                	test   %ecx,%ecx
58158d:	74 30                	je     0x5815bf
58158f:	ff 31                	push   (%ecx)
581591:	ff 71 08             	push   0x8(%ecx)
581594:	e8 f7 0b f6 ff       	call   0x4e2190
581599:	8b f0                	mov    %eax,%esi
58159b:	8d 44 24 1c          	lea    0x1c(%esp),%eax
58159f:	50                   	push   %eax
5815a0:	56                   	push   %esi
5815a1:	68 20 8b 65 00       	push   $0x658b20
5815a6:	e8 85 78 fe ff       	call   0x568e30
5815ab:	6a 35                	push   $0x35
5815ad:	68 90 be 65 00       	push   $0x65be90
5815b2:	56                   	push   %esi
5815b3:	e8 c8 f1 f5 ff       	call   0x4e0780
5815b8:	8b 44 24 34          	mov    0x34(%esp),%eax
5815bc:	83 c4 20             	add    $0x20,%esp
5815bf:	5f                   	pop    %edi
5815c0:	5e                   	pop    %esi
5815c1:	c3                   	ret
5815c2:	cc                   	int3
5815c3:	cc                   	int3
5815c4:	cc                   	int3
5815c5:	cc                   	int3
5815c6:	cc                   	int3
5815c7:	cc                   	int3
5815c8:	cc                   	int3
5815c9:	cc                   	int3
5815ca:	cc                   	int3
5815cb:	cc                   	int3
5815cc:	cc                   	int3
5815cd:	cc                   	int3
5815ce:	cc                   	int3
5815cf:	cc                   	int3
5815d0:	b8 18 00 00 00       	mov    $0x18,%eax
5815d5:	e8 d6 01 05 00       	call   0x5d17b0
5815da:	53                   	push   %ebx
5815db:	55                   	push   %ebp
5815dc:	8b 6c 24 2c          	mov    0x2c(%esp),%ebp
5815e0:	33 c0                	xor    %eax,%eax
5815e2:	56                   	push   %esi
5815e3:	57                   	push   %edi
5815e4:	32 db                	xor    %bl,%bl
5815e6:	c6 44 24 13 00       	movb   $0x0,0x13(%esp)
5815eb:	55                   	push   %ebp
5815ec:	89 5c 24 18          	mov    %ebx,0x18(%esp)
5815f0:	33 ff                	xor    %edi,%edi
5815f2:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%esp)
5815f9:	00
5815fa:	89 44 24 1c          	mov    %eax,0x1c(%esp)
5815fe:	89 44 24 28          	mov    %eax,0x28(%esp)
581602:	89 44 24 24          	mov    %eax,0x24(%esp)
581606:	e8 b5 3a f6 ff       	call   0x4e50c0
58160b:	83 c4 04             	add    $0x4,%esp
58160e:	85 c0                	test   %eax,%eax
581610:	0f 8e 28 01 00 00    	jle    0x58173e
581616:	57                   	push   %edi
581617:	55                   	push   %ebp
581618:	e8 63 3c f6 ff       	call   0x4e5280
58161d:	8b f0                	mov    %eax,%esi
58161f:	83 c4 08             	add    $0x8,%esp
581622:	b9 b0 8a 65 00       	mov    $0x658ab0,%ecx
581627:	8b 56 04             	mov    0x4(%esi),%edx
58162a:	8b c2                	mov    %edx,%eax
58162c:	0f 1f 40 00          	nopl   0x0(%eax)
581630:	8a 18                	mov    (%eax),%bl
581632:	3a 19                	cmp    (%ecx),%bl
581634:	75 1a                	jne    0x581650
581636:	84 db                	test   %bl,%bl
581638:	74 12                	je     0x58164c
58163a:	8a 58 01             	mov    0x1(%eax),%bl
58163d:	3a 59 01             	cmp    0x1(%ecx),%bl
581640:	75 0e                	jne    0x581650
581642:	83 c0 02             	add    $0x2,%eax
581645:	83 c1 02             	add    $0x2,%ecx
581648:	84 db                	test   %bl,%bl
58164a:	75 e4                	jne    0x581630
58164c:	33 c0                	xor    %eax,%eax
58164e:	eb 05                	jmp    0x581655
581650:	1b c0                	sbb    %eax,%eax
581652:	83 c8 01             	or     $0x1,%eax
581655:	85 c0                	test   %eax,%eax
581657:	75 52                	jne    0x5816ab
581659:	8b 46 08             	mov    0x8(%esi),%eax
58165c:	c6 44 24 13 01       	movb   $0x1,0x13(%esp)
581661:	85 c0                	test   %eax,%eax
581663:	0f 84 bf 00 00 00    	je     0x581728
581669:	b9 a8 be 65 00       	mov    $0x65bea8,%ecx
58166e:	66 90                	xchg   %ax,%ax
581670:	8a 10                	mov    (%eax),%dl
581672:	3a 11                	cmp    (%ecx),%dl
581674:	75 1a                	jne    0x581690
581676:	84 d2                	test   %dl,%dl
581678:	74 12                	je     0x58168c
58167a:	8a 50 01             	mov    0x1(%eax),%dl
58167d:	3a 51 01             	cmp    0x1(%ecx),%dl
581680:	75 0e                	jne    0x581690
581682:	83 c0 02             	add    $0x2,%eax
581685:	83 c1 02             	add    $0x2,%ecx
581688:	84 d2                	test   %dl,%dl
58168a:	75 e4                	jne    0x581670
58168c:	33 c0                	xor    %eax,%eax
58168e:	eb 05                	jmp    0x581695
581690:	1b c0                	sbb    %eax,%eax
581692:	83 c8 01             	or     $0x1,%eax
581695:	8b 5c 24 14          	mov    0x14(%esp),%ebx
581699:	85 c0                	test   %eax,%eax
58169b:	0f 85 8b 00 00 00    	jne    0x58172c
5816a1:	c6 44 24 13 02       	movb   $0x2,0x13(%esp)
5816a6:	e9 81 00 00 00       	jmp    0x58172c
5816ab:	b8 00 ee 64 00       	mov    $0x64ee00,%eax
5816b0:	8a 0a                	mov    (%edx),%cl
5816b2:	3a 08                	cmp    (%eax),%cl
5816b4:	75 1a                	jne    0x5816d0
5816b6:	84 c9                	test   %cl,%cl
5816b8:	74 12                	je     0x5816cc
5816ba:	8a 4a 01             	mov    0x1(%edx),%cl
5816bd:	3a 48 01             	cmp    0x1(%eax),%cl
5816c0:	75 0e                	jne    0x5816d0
5816c2:	83 c2 02             	add    $0x2,%edx
5816c5:	83 c0 02             	add    $0x2,%eax
5816c8:	84 c9                	test   %cl,%cl
5816ca:	75 e4                	jne    0x5816b0
5816cc:	33 c0                	xor    %eax,%eax
5816ce:	eb 05                	jmp    0x5816d5
5816d0:	1b c0                	sbb    %eax,%eax
5816d2:	83 c8 01             	or     $0x1,%eax
5816d5:	85 c0                	test   %eax,%eax
5816d7:	0f 85 ad 00 00 00    	jne    0x58178a
5816dd:	8b 46 08             	mov    0x8(%esi),%eax
5816e0:	b3 01                	mov    $0x1,%bl
5816e2:	89 5c 24 14          	mov    %ebx,0x14(%esp)
5816e6:	85 c0                	test   %eax,%eax
5816e8:	74 42                	je     0x58172c
5816ea:	b9 a8 be 65 00       	mov    $0x65bea8,%ecx
5816ef:	90                   	nop
5816f0:	8a 10                	mov    (%eax),%dl
5816f2:	3a 11                	cmp    (%ecx),%dl
5816f4:	75 1a                	jne    0x581710
5816f6:	84 d2                	test   %dl,%dl
5816f8:	74 12                	je     0x58170c
5816fa:	8a 50 01             	mov    0x1(%eax),%dl
5816fd:	3a 51 01             	cmp    0x1(%ecx),%dl
581700:	75 0e                	jne    0x581710
581702:	83 c0 02             	add    $0x2,%eax
581705:	83 c1 02             	add    $0x2,%ecx
581708:	84 d2                	test   %dl,%dl
58170a:	75 e4                	jne    0x5816f0
58170c:	33 c0                	xor    %eax,%eax
58170e:	eb 05                	jmp    0x581715
581710:	1b c0                	sbb    %eax,%eax
581712:	83 c8 01             	or     $0x1,%eax
581715:	85 c0                	test   %eax,%eax
581717:	0f b6 db             	movzbl %bl,%ebx
58171a:	b8 02 00 00 00       	mov    $0x2,%eax
58171f:	0f 44 d8             	cmove  %eax,%ebx
581722:	89 5c 24 14          	mov    %ebx,0x14(%esp)
581726:	eb 04                	jmp    0x58172c
581728:	8b 5c 24 14          	mov    0x14(%esp),%ebx
58172c:	55                   	push   %ebp
58172d:	47                   	inc    %edi
58172e:	e8 8d 39 f6 ff       	call   0x4e50c0
581733:	83 c4 04             	add    $0x4,%esp
581736:	3b f8                	cmp    %eax,%edi
581738:	0f 8c d8 fe ff ff    	jl     0x581616
58173e:	8b 44 24 30          	mov    0x30(%esp),%eax
581742:	85 c0                	test   %eax,%eax
581744:	0f 84 c6 01 00 00    	je     0x581910
58174a:	8b 70 04             	mov    0x4(%eax),%esi
58174d:	85 f6                	test   %esi,%esi
58174f:	0f 84 aa 01 00 00    	je     0x5818ff
581755:	80 7c 24 13 00       	cmpb   $0x0,0x13(%esp)
58175a:	74 77                	je     0x5817d3
58175c:	6a ff                	push   $0xffffffff
58175e:	6a 52                	push   $0x52
581760:	56                   	push   %esi
581761:	e8 ca 03 ff ff       	call   0x571b30
581766:	83 c4 0c             	add    $0xc,%esp
581769:	85 c0                	test   %eax,%eax
58176b:	78 4b                	js     0x5817b8
58176d:	50                   	push   %eax
58176e:	56                   	push   %esi
58176f:	e8 9c 03 ff ff       	call   0x571b10
581774:	83 c4 08             	add    $0x8,%esp
581777:	85 c0                	test   %eax,%eax
581779:	74 3d                	je     0x5817b8
58177b:	50                   	push   %eax
58177c:	e8 0f 82 ff ff       	call   0x579990
581781:	83 c4 04             	add    $0x4,%esp
581784:	89 44 24 1c          	mov    %eax,0x1c(%esp)
581788:	eb 30                	jmp    0x5817ba
58178a:	6a 5e                	push   $0x5e
58178c:	68 90 be 65 00       	push   $0x65be90
581791:	6a 78                	push   $0x78
581793:	6a 77                	push   $0x77
581795:	6a 22                	push   $0x22
581797:	e8 e4 77 f5 ff       	call   0x4d8f80
58179c:	ff 76 04             	push   0x4(%esi)
58179f:	68 f8 e5 64 00       	push   $0x64e5f8
5817a4:	6a 02                	push   $0x2
5817a6:	e8 c5 6e f5 ff       	call   0x4d8670
5817ab:	83 c4 20             	add    $0x20,%esp
5817ae:	33 c0                	xor    %eax,%eax
5817b0:	5f                   	pop    %edi
5817b1:	5e                   	pop    %esi
5817b2:	5d                   	pop    %ebp
5817b3:	5b                   	pop    %ebx
5817b4:	83 c4 18             	add    $0x18,%esp
5817b7:	c3                   	ret
5817b8:	33 c0                	xor    %eax,%eax
5817ba:	80 7c 24 13 02       	cmpb   $0x2,0x13(%esp)
5817bf:	75 12                	jne    0x5817d3