618764:	53                   	push   %ebx
618765:	8b ce                	mov    %esi,%ecx
618767:	e8 c7 f9 ff ff       	call   0x618133
61876c:	8b ce                	mov    %esi,%ecx
61876e:	e8 4e 02 00 00       	call   0x6189c1
618773:	8b c8                	mov    %eax,%ecx
618775:	b8 80 00 00 00       	mov    $0x80,%eax
61877a:	89 4d 08             	mov    %ecx,0x8(%ebp)
61877d:	39 86 04 07 00 00    	cmp    %eax,0x704(%esi)
618783:	73 0e                	jae    0x618793
618785:	83 be 40 01 00 00 08 	cmpl   $0x8,0x140(%esi)
61878c:	7d 05                	jge    0x618793
61878e:	83 c8 ff             	or     $0xffffffff,%eax
618791:	eb 1b                	jmp    0x6187ae
618793:	8b ce                	mov    %esi,%ecx
618795:	e8 97 13 00 00       	call   0x619b31
61879a:	6a 02                	push   $0x2
61879c:	53                   	push   %ebx
61879d:	8b ce                	mov    %esi,%ecx
61879f:	e8 8f f9 ff ff       	call   0x618133
6187a4:	8b ce                	mov    %esi,%ecx
6187a6:	e8 16 02 00 00       	call   0x6189c1
6187ab:	8b 4d 08             	mov    0x8(%ebp),%ecx
6187ae:	3b f9                	cmp    %ecx,%edi
6187b0:	77 45                	ja     0x6187f7
6187b2:	3b f8                	cmp    %eax,%edi
6187b4:	77 41                	ja     0x6187f7
6187b6:	6a 00                	push   $0x0
6187b8:	53                   	push   %ebx
6187b9:	8b ce                	mov    %esi,%ecx
6187bb:	e8 73 f9 ff ff       	call   0x618133
6187c0:	83 be 48 01 00 00 00 	cmpl   $0x0,0x148(%esi)
6187c7:	7e 50                	jle    0x618819
6187c9:	8b 86 4c 01 00 00    	mov    0x14c(%esi),%eax
6187cf:	85 c0                	test   %eax,%eax
6187d1:	74 19                	je     0x6187ec
6187d3:	83 a6 40 01 00 00 00 	andl   $0x0,0x140(%esi)
6187da:	85 c0                	test   %eax,%eax
6187dc:	74 0e                	je     0x6187ec
6187de:	03 c0                	add    %eax,%eax
6187e0:	b9 80 00 00 00       	mov    $0x80,%ecx
6187e5:	3b c1                	cmp    %ecx,%eax
6187e7:	0f 47 c1             	cmova  %ecx,%eax
6187ea:	eb 03                	jmp    0x6187ef
6187ec:	33 c0                	xor    %eax,%eax
6187ee:	40                   	inc    %eax
6187ef:	89 86 4c 01 00 00    	mov    %eax,0x14c(%esi)
6187f5:	eb 22                	jmp    0x618819
6187f7:	3b c8                	cmp    %eax,%ecx
6187f9:	8b ce                	mov    %esi,%ecx
6187fb:	77 04                	ja     0x618801
6187fd:	6a 01                	push   $0x1
6187ff:	eb 02                	jmp    0x618803
618801:	6a 02                	push   $0x2
618803:	53                   	push   %ebx
618804:	e8 2a f9 ff ff       	call   0x618133
618809:	83 be 48 01 00 00 00 	cmpl   $0x0,0x148(%esi)
618810:	7e 07                	jle    0x618819
618812:	83 a6 4c 01 00 00 00 	andl   $0x0,0x14c(%esi)
618819:	5f                   	pop    %edi
61881a:	8b 86 04 07 00 00    	mov    0x704(%esi),%eax
618820:	01 86 00 07 00 00    	add    %eax,0x700(%esi)
618826:	8d 45 fc             	lea    -0x4(%ebp),%eax
618829:	83 a6 fc 06 00 00 00 	andl   $0x0,0x6fc(%esi)
618830:	83 a6 04 07 00 00 00 	andl   $0x0,0x704(%esi)
618837:	8b 8e 60 06 00 00    	mov    0x660(%esi),%ecx
61883d:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
618841:	c6 45 08 00          	movb   $0x0,0x8(%ebp)
618845:	ff 75 08             	push   0x8(%ebp)
618848:	50                   	push   %eax
618849:	8b 86 64 06 00 00    	mov    0x664(%esi),%eax
61884f:	8d 04 88             	lea    (%eax,%ecx,4),%eax
618852:	50                   	push   %eax
618853:	ff b6 64 06 00 00    	push   0x664(%esi)
618859:	e8 94 e9 ff ff       	call   0x6171f2
61885e:	8b 8e e8 06 00 00    	mov    0x6e8(%esi),%ecx
618864:	8d 45 fc             	lea    -0x4(%ebp),%eax
618867:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
61886b:	c6 45 08 00          	movb   $0x0,0x8(%ebp)
61886f:	ff 75 08             	push   0x8(%ebp)
618872:	50                   	push   %eax
618873:	8b 86 ec 06 00 00    	mov    0x6ec(%esi),%eax
618879:	8d 04 88             	lea    (%eax,%ecx,4),%eax
61887c:	50                   	push   %eax
61887d:	ff b6 ec 06 00 00    	push   0x6ec(%esi)
618883:	e8 6a e9 ff ff       	call   0x6171f2
618888:	83 c4 20             	add    $0x20,%esp
61888b:	5e                   	pop    %esi
61888c:	5b                   	pop    %ebx
61888d:	8b e5                	mov    %ebp,%esp
61888f:	5d                   	pop    %ebp
618890:	c2 04 00             	ret    $0x4
618893:	55                   	push   %ebp
618894:	8b ec                	mov    %esp,%ebp
618896:	51                   	push   %ecx
618897:	51                   	push   %ecx
618898:	53                   	push   %ebx
618899:	56                   	push   %esi
61889a:	57                   	push   %edi
61889b:	8b f9                	mov    %ecx,%edi
61889d:	b8 ff ff 00 00       	mov    $0xffff,%eax
6188a2:	8d b7 54 01 00 00    	lea    0x154(%edi),%esi
6188a8:	8b 0e                	mov    (%esi),%ecx
6188aa:	8d 1c 09             	lea    (%ecx,%ecx,1),%ebx
6188ad:	3b d8                	cmp    %eax,%ebx
6188af:	0f 47 d8             	cmova  %eax,%ebx
6188b2:	89 5d f8             	mov    %ebx,-0x8(%ebp)
6188b5:	8d 83 fe fe ff ff    	lea    -0x102(%ebx),%eax
6188bb:	39 87 78 01 00 00    	cmp    %eax,0x178(%edi)
6188c1:	0f 82 bb 00 00 00    	jb     0x618982
6188c7:	33 db                	xor    %ebx,%ebx
6188c9:	39 8f 00 07 00 00    	cmp    %ecx,0x700(%edi)
6188cf:	73 08                	jae    0x6188d9
6188d1:	53                   	push   %ebx
6188d2:	8b cf                	mov    %edi,%ecx
6188d4:	e8 e9 fd ff ff       	call   0x6186c2
6188d9:	8b 06                	mov    (%esi),%eax
6188db:	8b 8f c4 01 00 00    	mov    0x1c4(%edi),%ecx
6188e1:	50                   	push   %eax
6188e2:	03 c1                	add    %ecx,%eax
6188e4:	50                   	push   %eax
6188e5:	51                   	push   %ecx
6188e6:	e8 15 a6 fc ff       	call   0x5e2f00
6188eb:	8b 87 74 01 00 00    	mov    0x174(%edi),%eax
6188f1:	83 c4 0c             	add    $0xc,%esp
6188f4:	8b 0e                	mov    (%esi),%ecx
6188f6:	3b c1                	cmp    %ecx,%eax
6188f8:	73 04                	jae    0x6188fe
6188fa:	8b c3                	mov    %ebx,%eax
6188fc:	eb 02                	jmp    0x618900
6188fe:	2b c1                	sub    %ecx,%eax
618900:	29 8f 78 01 00 00    	sub    %ecx,0x178(%edi)
618906:	29 8f 84 01 00 00    	sub    %ecx,0x184(%edi)
61890c:	29 8f 00 07 00 00    	sub    %ecx,0x700(%edi)
618912:	8b cb                	mov    %ebx,%ecx
618914:	89 87 74 01 00 00    	mov    %eax,0x174(%edi)
61891a:	89 5d fc             	mov    %ebx,-0x4(%ebp)
61891d:	39 9f 5c 01 00 00    	cmp    %ebx,0x15c(%edi)
618923:	76 32                	jbe    0x618957
618925:	8d 9f 54 01 00 00    	lea    0x154(%edi),%ebx
61892b:	8b 87 d0 01 00 00    	mov    0x1d0(%edi),%eax
618931:	53                   	push   %ebx
618932:	8d 34 48             	lea    (%eax,%ecx,2),%esi
618935:	56                   	push   %esi
618936:	e8 d5 e6 ff ff       	call   0x617010
61893b:	59                   	pop    %ecx
61893c:	59                   	pop    %ecx
61893d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
618940:	41                   	inc    %ecx
618941:	66 89 06             	mov    %ax,(%esi)
618944:	89 4d fc             	mov    %ecx,-0x4(%ebp)
618947:	3b 8f 5c 01 00 00    	cmp    0x15c(%edi),%ecx
61894d:	72 dc                	jb     0x61892b
61894f:	33 db                	xor    %ebx,%ebx
618951:	8d b7 54 01 00 00    	lea    0x154(%edi),%esi
618957:	39 1e                	cmp    %ebx,(%esi)
618959:	76 24                	jbe    0x61897f
61895b:	8b 87 dc 01 00 00    	mov    0x1dc(%edi),%eax
618961:	8d 34 58             	lea    (%eax,%ebx,2),%esi
618964:	8d 87 54 01 00 00    	lea    0x154(%edi),%eax
61896a:	50                   	push   %eax
61896b:	56                   	push   %esi
61896c:	e8 9f e6 ff ff       	call   0x617010
618971:	43                   	inc    %ebx
618972:	66 89 06             	mov    %ax,(%esi)
618975:	59                   	pop    %ecx
618976:	59                   	pop    %ecx
618977:	3b 9f 54 01 00 00    	cmp    0x154(%edi),%ebx
61897d:	72 dc                	jb     0x61895b
61897f:	8b 5d f8             	mov    -0x8(%ebp),%ebx
618982:	8b 97 7c 01 00 00    	mov    0x17c(%edi),%edx
618988:	2b da                	sub    %edx,%ebx
61898a:	8b b7 78 01 00 00    	mov    0x178(%edi),%esi
618990:	2b de                	sub    %esi,%ebx
618992:	39 5d 0c             	cmp    %ebx,0xc(%ebp)
618995:	8b 8f c4 01 00 00    	mov    0x1c4(%edi),%ecx
61899b:	0f 42 5d 0c          	cmovb  0xc(%ebp),%ebx
61899f:	03 ca                	add    %edx,%ecx
6189a1:	53                   	push   %ebx
6189a2:	ff 75 08             	push   0x8(%ebp)
6189a5:	03 ce                	add    %esi,%ecx
6189a7:	51                   	push   %ecx
6189a8:	e8 53 a5 fc ff       	call   0x5e2f00
6189ad:	83 c4 0c             	add    $0xc,%esp
6189b0:	8b c3                	mov    %ebx,%eax
6189b2:	01 9f 7c 01 00 00    	add    %ebx,0x17c(%edi)
6189b8:	5f                   	pop    %edi
6189b9:	5e                   	pop    %esi
6189ba:	5b                   	pop    %ebx
6189bb:	8b e5                	mov    %ebp,%esp
6189bd:	5d                   	pop    %ebp
6189be:	c2 08 00             	ret    $0x8
6189c1:	8b 41 1c             	mov    0x1c(%ecx),%eax
6189c4:	c6 41 18 00          	movb   $0x0,0x18(%ecx)
6189c8:	c3                   	ret
6189c9:	55                   	push   %ebp
6189ca:	8b ec                	mov    %esp,%ebp
6189cc:	51                   	push   %ecx
6189cd:	57                   	push   %edi
6189ce:	8b f9                	mov    %ecx,%edi
6189d0:	80 7f 18 00          	cmpb   $0x0,0x18(%edi)
6189d4:	74 0f                	je     0x6189e5
6189d6:	33 c0                	xor    %eax,%eax
6189d8:	3b 47 24             	cmp    0x24(%edi),%eax
6189db:	1b c0                	sbb    %eax,%eax
6189dd:	83 e0 08             	and    $0x8,%eax
6189e0:	01 47 1c             	add    %eax,0x1c(%edi)
6189e3:	eb 58                	jmp    0x618a3d
6189e5:	53                   	push   %ebx
6189e6:	8b 5f 28             	mov    0x28(%edi),%ebx
6189e9:	56                   	push   %esi
6189ea:	33 f6                	xor    %esi,%esi
6189ec:	85 db                	test   %ebx,%ebx
6189ee:	74 20                	je     0x618a10
6189f0:	8b 07                	mov    (%edi),%eax
6189f2:	8b b7 3c 01 00 00    	mov    0x13c(%edi),%esi
6189f8:	ff 90 a4 00 00 00    	call   *0xa4(%eax)
6189fe:	6a 01                	push   $0x1
618a00:	6a 00                	push   $0x0
618a02:	53                   	push   %ebx
618a03:	8b 10                	mov    (%eax),%edx
618a05:	8b c8                	mov    %eax,%ecx
618a07:	56                   	push   %esi
618a08:	ff 52 18             	call   *0x18(%edx)
618a0b:	33 f6                	xor    %esi,%esi
618a0d:	89 77 28             	mov    %esi,0x28(%edi)
618a10:	39 77 24             	cmp    %esi,0x24(%edi)
618a13:	76 26                	jbe    0x618a3b
618a15:	8a 47 20             	mov    0x20(%edi),%al
618a18:	8b cf                	mov    %edi,%ecx
618a1a:	88 45 fc             	mov    %al,-0x4(%ebp)
618a1d:	8b 07                	mov    (%edi),%eax
618a1f:	ff 90 a4 00 00 00    	call   *0xa4(%eax)
618a25:	6a 01                	push   $0x1
618a27:	56                   	push   %esi
618a28:	6a 01                	push   $0x1
618a2a:	8b 10                	mov    (%eax),%edx
618a2c:	8d 4d fc             	lea    -0x4(%ebp),%ecx
618a2f:	51                   	push   %ecx
618a30:	8b c8                	mov    %eax,%ecx
618a32:	ff 52 14             	call   *0x14(%edx)
618a35:	89 77 20             	mov    %esi,0x20(%edi)
618a38:	89 77 24             	mov    %esi,0x24(%edi)
618a3b:	5e                   	pop    %esi
618a3c:	5b                   	pop    %ebx
618a3d:	5f                   	pop    %edi
618a3e:	8b e5                	mov    %ebp,%esp
618a40:	5d                   	pop    %ebp
618a41:	c3                   	ret
618a42:	53                   	push   %ebx
618a43:	8b dc                	mov    %esp,%ebx
618a45:	51                   	push   %ecx
618a46:	51                   	push   %ecx
618a47:	83 e4 f8             	and    $0xfffffff8,%esp
618a4a:	83 c4 04             	add    $0x4,%esp
618a4d:	55                   	push   %ebp
618a4e:	8b 6b 04             	mov    0x4(%ebx),%ebp
618a51:	89 6c 24 04          	mov    %ebp,0x4(%esp)
618a55:	8b ec                	mov    %esp,%ebp
618a57:	6a ff                	push   $0xffffffff
618a59:	68 97 24 66 00       	push   $0x662497
618a5e:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
618a64:	50                   	push   %eax
618a65:	53                   	push   %ebx
618a66:	b8 78 12 00 00       	mov    $0x1278,%eax
618a6b:	e8 80 8a fc ff       	call   0x5e14f0
618a70:	a1 d4 89 72 00       	mov    0x7289d4,%eax
618a75:	33 c5                	xor    %ebp,%eax
618a77:	89 45 ec             	mov    %eax,-0x14(%ebp)
618a7a:	56                   	push   %esi
618a7b:	57                   	push   %edi
618a7c:	50                   	push   %eax
618a7d:	8d 45 f4             	lea    -0xc(%ebp),%eax
618a80:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
618a86:	8b 73 14             	mov    0x14(%ebx),%esi
618a89:	8d 8d a8 ed ff ff    	lea    -0x1258(%ebp),%ecx
618a8f:	8b 43 08             	mov    0x8(%ebx),%eax
618a92:	8b 7b 0c             	mov    0xc(%ebx),%edi
618a95:	56                   	push   %esi
618a96:	89 85 7c ed ff ff    	mov    %eax,-0x1284(%ebp)
618a9c:	89 bd 90 ed ff ff    	mov    %edi,-0x1270(%ebp)
618aa2:	89 bd 88 ed ff ff    	mov    %edi,-0x1278(%ebp)
618aa8:	89 b5 80 ed ff ff    	mov    %esi,-0x1280(%ebp)
618aae:	e8 56 ef ff ff       	call   0x617a09
618ab3:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
618ab7:	33 d2                	xor    %edx,%edx
618ab9:	85 f6                	test   %esi,%esi
618abb:	74 18                	je     0x618ad5
618abd:	8b 7b 10             	mov    0x10(%ebx),%edi
618ac0:	8b 45 94             	mov    -0x6c(%ebp),%eax
618ac3:	89 14 d0             	mov    %edx,(%eax,%edx,8)
618ac6:	8b 45 94             	mov    -0x6c(%ebp),%eax
618ac9:	8b 0c 97             	mov    (%edi,%edx,4),%ecx
618acc:	89 4c d0 04          	mov    %ecx,0x4(%eax,%edx,8)
618ad0:	42                   	inc    %edx
618ad1:	3b d6                	cmp    %esi,%edx
618ad3:	72 eb                	jb     0x618ac0
618ad5:	8a 85 a4 ed ff ff    	mov    -0x125c(%ebp),%al
618adb:	8d 95 a4 ed ff ff    	lea    -0x125c(%ebp),%edx
618ae1:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
618ae4:	88 85 a4 ed ff ff    	mov    %al,-0x125c(%ebp)
618aea:	8b 45 90             	mov    -0x70(%ebp),%eax
618aed:	52                   	push   %edx
618aee:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
618af1:	50                   	push   %eax
618af2:	51                   	push   %ecx
618af3:	e8 3f ed ff ff       	call   0x617837
618af8:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
618afb:	8d 95 a4 ed ff ff    	lea    -0x125c(%ebp),%edx
618b01:	8b 45 90             	mov    -0x70(%ebp),%eax
618b04:	83 a5 98 ed ff ff 00 	andl   $0x0,-0x1268(%ebp)
618b0b:	52                   	push   %edx
618b0c:	8d 95 98 ed ff ff    	lea    -0x1268(%ebp),%edx
618b12:	52                   	push   %edx
618b13:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
618b16:	50                   	push   %eax
618b17:	51                   	push   %ecx
618b18:	e8 3a ed ff ff       	call   0x617857
618b1d:	8b c8                	mov    %eax,%ecx
618b1f:	83 c4 1c             	add    $0x1c,%esp
618b22:	2b 4d 94             	sub    -0x6c(%ebp),%ecx
618b25:	c1 f9 03             	sar    $0x3,%ecx
618b28:	89 8d 84 ed ff ff    	mov    %ecx,-0x127c(%ebp)
618b2e:	3b ce                	cmp    %esi,%ecx
618b30:	75 33                	jne    0x618b65
618b32:	8b 8d 7c ed ff ff    	mov    -0x1284(%ebp),%ecx
618b38:	8d 85 90 ed ff ff    	lea    -0x1270(%ebp),%eax
618b3e:	83 a5 90 ed ff ff 00 	andl   $0x0,-0x1270(%ebp)
618b45:	c6 85 98 ed ff ff 00 	movb   $0x0,-0x1268(%ebp)
618b4c:	ff b5 98 ed ff ff    	push   -0x1268(%ebp)
618b52:	50                   	push   %eax
618b53:	8d 04 b1             	lea    (%ecx,%esi,4),%eax
618b56:	50                   	push   %eax
618b57:	51                   	push   %ecx
618b58:	e8 95 e6 ff ff       	call   0x6171f2
618b5d:	83 c4 10             	add    $0x10,%esp
618b60:	e9 a5 02 00 00       	jmp    0x618e0a
618b65:	8d 04 36             	lea    (%esi,%esi,1),%eax
618b68:	2b c1                	sub    %ecx,%eax
618b6a:	8d 8d a8 ed ff ff    	lea    -0x1258(%ebp),%ecx
618b70:	48                   	dec    %eax
618b71:	50                   	push   %eax
618b72:	e8 d6 11 00 00       	call   0x619d4d
618b77:	8b 7d 90             	mov    -0x70(%ebp),%edi
618b7a:	8b ce                	mov    %esi,%ecx
618b7c:	8b 95 84 ed ff ff    	mov    -0x127c(%ebp),%edx
618b82:	3b f7                	cmp    %edi,%esi
618b84:	89 bd 98 ed ff ff    	mov    %edi,-0x1268(%ebp)
618b8a:	8b c6                	mov    %esi,%eax
618b8c:	8b bd 90 ed ff ff    	mov    -0x1270(%ebp),%edi