5825b8:	8d 55 b4             	lea    -0x4c(%ebp),%edx
5825bb:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5825be:	8b c3                	mov    %ebx,%eax
5825c0:	ff 93 a8 00 00 00    	call   *0xa8(%ebx)
5825c6:	89 45 f4             	mov    %eax,-0xc(%ebp)
5825c9:	4e                   	dec    %esi
5825ca:	75 b7                	jne    0x582583
5825cc:	5e                   	pop    %esi
5825cd:	5b                   	pop    %ebx
5825ce:	8b e5                	mov    %ebp,%esp
5825d0:	5d                   	pop    %ebp
5825d1:	c2 04 00             	ret    $0x4
5825d4:	e8 2b cf ff ff       	call   0x57f504
5825d9:	2d 20 62 61 4c       	sub    $0x4c616220,%eax
5825de:	74 0a                	je     0x5825ea
5825e0:	2d 00 f8 f7 0b       	sub    $0xbf7f800,%eax
5825e5:	75 09                	jne    0x5825f0
5825e7:	33 c0                	xor    %eax,%eax
5825e9:	c3                   	ret
5825ea:	b8 01 00 00 00       	mov    $0x1,%eax
5825ef:	c3                   	ret
5825f0:	33 c0                	xor    %eax,%eax
5825f2:	c3                   	ret
5825f3:	90                   	nop
5825f4:	53                   	push   %ebx
5825f5:	56                   	push   %esi
5825f6:	8b f2                	mov    %edx,%esi
5825f8:	8b d8                	mov    %eax,%ebx
5825fa:	8b d6                	mov    %esi,%edx
5825fc:	8b c3                	mov    %ebx,%eax
5825fe:	e8 15 98 ff ff       	call   0x57be18
582603:	85 c0                	test   %eax,%eax
582605:	0f 9d c0             	setge  %al
582608:	f6 d8                	neg    %al
58260a:	1b c0                	sbb    %eax,%eax
58260c:	5e                   	pop    %esi
58260d:	5b                   	pop    %ebx
58260e:	c3                   	ret
58260f:	90                   	nop
582610:	89 50 04             	mov    %edx,0x4(%eax)
582613:	c3                   	ret
582614:	89 50 08             	mov    %edx,0x8(%eax)
582617:	c3                   	ret
582618:	89 50 0c             	mov    %edx,0xc(%eax)
58261b:	c3                   	ret
58261c:	55                   	push   %ebp
58261d:	8b ec                	mov    %esp,%ebp
58261f:	83 c4 f8             	add    $0xfffffff8,%esp
582622:	53                   	push   %ebx
582623:	56                   	push   %esi
582624:	57                   	push   %edi
582625:	89 4d f8             	mov    %ecx,-0x8(%ebp)
582628:	89 55 fc             	mov    %edx,-0x4(%ebp)
58262b:	8b f0                	mov    %eax,%esi
58262d:	8b 55 fc             	mov    -0x4(%ebp),%edx
582630:	8b c6                	mov    %esi,%eax
582632:	e8 e1 97 ff ff       	call   0x57be18
582637:	8b d8                	mov    %eax,%ebx
582639:	85 db                	test   %ebx,%ebx
58263b:	7c 12                	jl     0x58264f
58263d:	8b 84 9e 18 03 00 00 	mov    0x318(%esi,%ebx,4),%eax
582644:	85 c0                	test   %eax,%eax
582646:	74 13                	je     0x58265b
582648:	e8 7f 01 e8 ff       	call   0x4027cc
58264d:	eb 0c                	jmp    0x58265b
58264f:	8b 9e bc 00 00 00    	mov    0xbc(%esi),%ebx
582655:	ff 86 bc 00 00 00    	incl   0xbc(%esi)
58265b:	8b 45 f8             	mov    -0x8(%ebp),%eax
58265e:	e8 49 01 e8 ff       	call   0x4027ac
582663:	8b f8                	mov    %eax,%edi
582665:	8b 4d f8             	mov    -0x8(%ebp),%ecx
582668:	8b 55 08             	mov    0x8(%ebp),%edx
58266b:	8b c7                	mov    %edi,%eax
58266d:	e8 4e 58 e8 ff       	call   0x407ec0
582672:	8b 45 fc             	mov    -0x4(%ebp),%eax
582675:	89 84 9e c0 00 00 00 	mov    %eax,0xc0(%esi,%ebx,4)
58267c:	8b 45 f8             	mov    -0x8(%ebp),%eax
58267f:	89 84 9e 88 01 00 00 	mov    %eax,0x188(%esi,%ebx,4)
582686:	89 bc 9e 18 03 00 00 	mov    %edi,0x318(%esi,%ebx,4)
58268d:	8b c7                	mov    %edi,%eax
58268f:	5f                   	pop    %edi
582690:	5e                   	pop    %esi
582691:	5b                   	pop    %ebx
582692:	59                   	pop    %ecx
582693:	59                   	pop    %ecx
582694:	5d                   	pop    %ebp
582695:	c2 04 00             	ret    $0x4
582698:	53                   	push   %ebx
582699:	56                   	push   %esi
58269a:	57                   	push   %edi
58269b:	8b d9                	mov    %ecx,%ebx
58269d:	8b fa                	mov    %edx,%edi
58269f:	8b f0                	mov    %eax,%esi
5826a1:	53                   	push   %ebx
5826a2:	8b c3                	mov    %ebx,%eax
5826a4:	e8 47 77 e8 ff       	call   0x409df0
5826a9:	8b c8                	mov    %eax,%ecx
5826ab:	41                   	inc    %ecx
5826ac:	8b d7                	mov    %edi,%edx
5826ae:	8b c6                	mov    %esi,%eax
5826b0:	e8 67 ff ff ff       	call   0x58261c
5826b5:	83 c8 ff             	or     $0xffffffff,%eax
5826b8:	5f                   	pop    %edi
5826b9:	5e                   	pop    %esi
5826ba:	5b                   	pop    %ebx
5826bb:	c3                   	ret
5826bc:	89 50 10             	mov    %edx,0x10(%eax)
5826bf:	c3                   	ret
5826c0:	51                   	push   %ecx
5826c1:	b9 18 00 00 00       	mov    $0x18,%ecx
5826c6:	e8 51 ff ff ff       	call   0x58261c
5826cb:	83 c8 ff             	or     $0xffffffff,%eax
5826ce:	c3                   	ret
5826cf:	90                   	nop
5826d0:	8b 00                	mov    (%eax),%eax
5826d2:	48                   	dec    %eax
5826d3:	03 c0                	add    %eax,%eax
5826d5:	83 c0 06             	add    $0x6,%eax
5826d8:	c3                   	ret
5826d9:	8d 40 00             	lea    0x0(%eax),%eax
5826dc:	53                   	push   %ebx
5826dd:	56                   	push   %esi
5826de:	57                   	push   %edi
5826df:	8b d9                	mov    %ecx,%ebx
5826e1:	8b fa                	mov    %edx,%edi
5826e3:	8b f0                	mov    %eax,%esi
5826e5:	53                   	push   %ebx
5826e6:	8b c3                	mov    %ebx,%eax
5826e8:	e8 e3 ff ff ff       	call   0x5826d0
5826ed:	8b c8                	mov    %eax,%ecx
5826ef:	8b d7                	mov    %edi,%edx
5826f1:	8b c6                	mov    %esi,%eax
5826f3:	e8 24 ff ff ff       	call   0x58261c
5826f8:	83 c8 ff             	or     $0xffffffff,%eax
5826fb:	5f                   	pop    %edi
5826fc:	5e                   	pop    %esi
5826fd:	5b                   	pop    %ebx
5826fe:	c3                   	ret
5826ff:	90                   	nop
582700:	85 d2                	test   %edx,%edx
582702:	74 0d                	je     0x582711
582704:	85 c9                	test   %ecx,%ecx
582706:	7e 09                	jle    0x582711
582708:	52                   	push   %edx
582709:	33 d2                	xor    %edx,%edx
58270b:	e8 0c ff ff ff       	call   0x58261c
582710:	c3                   	ret
582711:	33 c0                	xor    %eax,%eax
582713:	c3                   	ret
582714:	53                   	push   %ebx
582715:	56                   	push   %esi
582716:	57                   	push   %edi
582717:	55                   	push   %ebp
582718:	83 c4 f8             	add    $0xfffffff8,%esp
58271b:	8b d9                	mov    %ecx,%ebx
58271d:	89 14 24             	mov    %edx,(%esp)
582720:	8b e8                	mov    %eax,%ebp
582722:	8b f3                	mov    %ebx,%esi
582724:	53                   	push   %ebx
582725:	b9 be 02 00 00       	mov    $0x2be,%ecx
58272a:	8b 54 24 04          	mov    0x4(%esp),%edx
58272e:	8b c5                	mov    %ebp,%eax
582730:	e8 e7 fe ff ff       	call   0x58261c
582735:	89 44 24 04          	mov    %eax,0x4(%esp)
582739:	8b 7e 28             	mov    0x28(%esi),%edi
58273c:	4f                   	dec    %edi
58273d:	85 ff                	test   %edi,%edi
58273f:	72 22                	jb     0x582763
582741:	47                   	inc    %edi
582742:	33 db                	xor    %ebx,%ebx
582744:	8b 8e c4 00 00 00    	mov    0xc4(%esi),%ecx
58274a:	03 c9                	add    %ecx,%ecx
58274c:	8b 54 9e 3c          	mov    0x3c(%esi,%ebx,4),%edx
582750:	8b c5                	mov    %ebp,%eax
582752:	e8 a9 ff ff ff       	call   0x582700
582757:	8b 54 24 04          	mov    0x4(%esp),%edx
58275b:	89 44 9a 3c          	mov    %eax,0x3c(%edx,%ebx,4)
58275f:	43                   	inc    %ebx
582760:	4f                   	dec    %edi
582761:	75 e1                	jne    0x582744
582763:	8b 7e 2c             	mov    0x2c(%esi),%edi
582766:	4f                   	dec    %edi
582767:	85 ff                	test   %edi,%edi
582769:	72 22                	jb     0x58278d
58276b:	47                   	inc    %edi
58276c:	33 db                	xor    %ebx,%ebx
58276e:	8b 8e fa 00 00 00    	mov    0xfa(%esi),%ecx
582774:	03 c9                	add    %ecx,%ecx
582776:	8b 54 9e 7c          	mov    0x7c(%esi,%ebx,4),%edx
58277a:	8b c5                	mov    %ebp,%eax
58277c:	e8 7f ff ff ff       	call   0x582700
582781:	8b 54 24 04          	mov    0x4(%esp),%edx
582785:	89 44 9a 7c          	mov    %eax,0x7c(%edx,%ebx,4)
582789:	43                   	inc    %ebx
58278a:	4f                   	dec    %edi
58278b:	75 e1                	jne    0x58276e
58278d:	8b 8e c0 00 00 00    	mov    0xc0(%esi),%ecx
582793:	8b 96 bc 00 00 00    	mov    0xbc(%esi),%edx
582799:	8b c5                	mov    %ebp,%eax
58279b:	e8 60 ff ff ff       	call   0x582700
5827a0:	8b 54 24 04          	mov    0x4(%esp),%edx
5827a4:	89 82 bc 00 00 00    	mov    %eax,0xbc(%edx)
5827aa:	83 c8 ff             	or     $0xffffffff,%eax
5827ad:	59                   	pop    %ecx
5827ae:	5a                   	pop    %edx
5827af:	5d                   	pop    %ebp
5827b0:	5f                   	pop    %edi
5827b1:	5e                   	pop    %esi
5827b2:	5b                   	pop    %ebx
5827b3:	c3                   	ret
5827b4:	51                   	push   %ecx
5827b5:	b9 48 00 00 00       	mov    $0x48,%ecx
5827ba:	e8 5d fe ff ff       	call   0x58261c
5827bf:	83 c8 ff             	or     $0xffffffff,%eax
5827c2:	c3                   	ret
5827c3:	90                   	nop
5827c4:	51                   	push   %ecx
5827c5:	69 09 14 04 00 00    	imul   $0x414,(%ecx),%ecx
5827cb:	83 c1 04             	add    $0x4,%ecx
5827ce:	e8 49 fe ff ff       	call   0x58261c
5827d3:	83 c8 ff             	or     $0xffffffff,%eax
5827d6:	c3                   	ret
5827d7:	90                   	nop
5827d8:	51                   	push   %ecx
5827d9:	8b 09                	mov    (%ecx),%ecx
5827db:	49                   	dec    %ecx
5827dc:	69 c9 2a 01 00 00    	imul   $0x12a,%ecx,%ecx
5827e2:	81 c1 78 01 00 00    	add    $0x178,%ecx
5827e8:	e8 2f fe ff ff       	call   0x58261c
5827ed:	33 c0                	xor    %eax,%eax
5827ef:	c3                   	ret
5827f0:	53                   	push   %ebx
5827f1:	56                   	push   %esi
5827f2:	57                   	push   %edi
5827f3:	55                   	push   %ebp
5827f4:	51                   	push   %ecx
5827f5:	89 0c 24             	mov    %ecx,(%esp)
5827f8:	8b da                	mov    %edx,%ebx
5827fa:	8b e8                	mov    %eax,%ebp
5827fc:	8b f3                	mov    %ebx,%esi
5827fe:	8b c6                	mov    %esi,%eax
582800:	3d 43 52 54 67       	cmp    $0x67545243,%eax
582805:	7f 7d                	jg     0x582884
582807:	0f 84 f8 00 00 00    	je     0x582905
58280d:	3d 6d 72 68 63       	cmp    $0x6368726d,%eax
582812:	7f 4f                	jg     0x582863
582814:	0f 84 0b 01 00 00    	je     0x582925
58281a:	3d 43 52 54 62       	cmp    $0x62545243,%eax
58281f:	7f 27                	jg     0x582848
582821:	0f 84 de 00 00 00    	je     0x582905
582827:	05 d0 bd cd be       	add    $0xbecdbdd0,%eax
58282c:	83 e8 03             	sub    $0x3,%eax
58282f:	0f 82 e0 00 00 00    	jb     0x582915
582835:	05 03 01 00 ff       	add    $0xff000103,%eax
58283a:	83 e8 03             	sub    $0x3,%eax
58283d:	0f 82 d2 00 00 00    	jb     0x582915
582843:	e9 0d 01 00 00       	jmp    0x582955
582848:	2d 5a 59 58 62       	sub    $0x6258595a,%eax
58284d:	0f 84 a2 00 00 00    	je     0x5828f5
582853:	2d 1a 17 13 00       	sub    $0x13171a,%eax
582858:	0f 84 97 00 00 00    	je     0x5828f5
58285e:	e9 f2 00 00 00       	jmp    0x582955
582863:	2d 74 72 70 63       	sub    $0x63707274,%eax
582868:	74 7b                	je     0x5828e5
58286a:	2d ef 00 f5 00       	sub    $0xf500ef,%eax
58286f:	74 74                	je     0x5828e5
582871:	2d 01 f1 07 00       	sub    $0x7f101,%eax
582876:	74 6d                	je     0x5828e5
582878:	2d 00 0a 00 00       	sub    $0xa00,%eax
58287d:	74 66                	je     0x5828e5
58287f:	e9 d1 00 00 00       	jmp    0x582955
582884:	3d 71 65 73 70       	cmp    $0x70736571,%eax
582889:	7f 3c                	jg     0x5828c7
58288b:	0f 84 a4 00 00 00    	je     0x582935
582891:	3d 43 52 54 6b       	cmp    $0x6b545243,%eax
582896:	7f 15                	jg     0x5828ad
582898:	74 6b                	je     0x582905
58289a:	2d 5a 59 58 67       	sub    $0x6758595a,%eax
58289f:	74 54                	je     0x5828f5
5828a1:	2d 1a 14 09 00       	sub    $0x9141a,%eax
5828a6:	74 6d                	je     0x582915
5828a8:	e9 a8 00 00 00       	jmp    0x582955
5828ad:	2d 32 6c 63 6e       	sub    $0x6e636c32,%eax
5828b2:	0f 84 8d 00 00 00    	je     0x582945
5828b8:	05 02 07 f1 fd       	add    $0xfdf10702,%eax
5828bd:	83 e8 03             	sub    $0x3,%eax
5828c0:	72 53                	jb     0x582915
5828c2:	e9 8e 00 00 00       	jmp    0x582955
5828c7:	2d 43 52 54 72       	sub    $0x72545243,%eax
5828cc:	74 37                	je     0x582905
5828ce:	2d 17 07 04 00       	sub    $0x40717,%eax
5828d3:	74 20                	je     0x5828f5
5828d5:	2d 0d 19 09 02       	sub    $0x209190d,%eax
5828da:	74 09                	je     0x5828e5
5828dc:	2d 0d fe 12 03       	sub    $0x312fe0d,%eax
5828e1:	74 12                	je     0x5828f5
5828e3:	eb 70                	jmp    0x582955
5828e5:	8b 0c 24             	mov    (%esp),%ecx
5828e8:	8b d3                	mov    %ebx,%edx
5828ea:	8b c5                	mov    %ebp,%eax
5828ec:	e8 a7 fd ff ff       	call   0x582698
5828f1:	8b f8                	mov    %eax,%edi
5828f3:	eb 64                	jmp    0x582959
5828f5:	8b 0c 24             	mov    (%esp),%ecx
5828f8:	8b d3                	mov    %ebx,%edx
5828fa:	8b c5                	mov    %ebp,%eax
5828fc:	e8 bf fd ff ff       	call   0x5826c0
582901:	8b f8                	mov    %eax,%edi
582903:	eb 54                	jmp    0x582959
582905:	8b 0c 24             	mov    (%esp),%ecx
582908:	8b d3                	mov    %ebx,%edx
58290a:	8b c5                	mov    %ebp,%eax
58290c:	e8 cb fd ff ff       	call   0x5826dc
582911:	8b f8                	mov    %eax,%edi
582913:	eb 44                	jmp    0x582959
582915:	8b 0c 24             	mov    (%esp),%ecx
582918:	8b d3                	mov    %ebx,%edx
58291a:	8b c5                	mov    %ebp,%eax
58291c:	e8 f3 fd ff ff       	call   0x582714
582921:	8b f8                	mov    %eax,%edi
582923:	eb 34                	jmp    0x582959
582925:	8b 0c 24             	mov    (%esp),%ecx
582928:	8b d3                	mov    %ebx,%edx
58292a:	8b c5                	mov    %ebp,%eax
58292c:	e8 83 fe ff ff       	call   0x5827b4
582931:	8b f8                	mov    %eax,%edi
582933:	eb 24                	jmp    0x582959
582935:	8b 0c 24             	mov    (%esp),%ecx
582938:	8b d3                	mov    %ebx,%edx
58293a:	8b c5                	mov    %ebp,%eax
58293c:	e8 83 fe ff ff       	call   0x5827c4
582941:	8b f8                	mov    %eax,%edi
582943:	eb 14                	jmp    0x582959
582945:	8b 0c 24             	mov    (%esp),%ecx
582948:	8b d3                	mov    %ebx,%edx
58294a:	8b c5                	mov    %ebp,%eax
58294c:	e8 87 fe ff ff       	call   0x5827d8
582951:	8b f8                	mov    %eax,%edi
582953:	eb 04                	jmp    0x582959
582955:	33 c0                	xor    %eax,%eax
582957:	eb 21                	jmp    0x58297a
582959:	81 ee 74 70 6b 62    	sub    $0x626b7074,%esi
58295f:	74 10                	je     0x582971
582961:	81 ee f0 f0 fc 00    	sub    $0xfcf0f0,%esi
582967:	74 08                	je     0x582971
582969:	81 ee 10 0f 0c 14    	sub    $0x140c0f10,%esi
58296f:	75 07                	jne    0x582978
582971:	8b c5                	mov    %ebp,%eax
582973:	e8 00 9a ff ff       	call   0x57c378
582978:	8b c7                	mov    %edi,%eax