4c987a:	e8 cd 0d f5 ff       	call   0x41a64c
4c987f:	8b 45 84             	mov    -0x7c(%ebp),%eax
4c9882:	89 45 dc             	mov    %eax,-0x24(%ebp)
4c9885:	8b 45 88             	mov    -0x78(%ebp),%eax
4c9888:	89 45 e0             	mov    %eax,-0x20(%ebp)
4c988b:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
4c9891:	8b d6                	mov    %esi,%edx
4c9893:	83 ea 02             	sub    $0x2,%edx
4c9896:	8b c7                	mov    %edi,%eax
4c9898:	e8 af 0d f5 ff       	call   0x41a64c
4c989d:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
4c98a3:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4c98a6:	8b 45 80             	mov    -0x80(%ebp),%eax
4c98a9:	89 45 e8             	mov    %eax,-0x18(%ebp)
4c98ac:	8d 55 b4             	lea    -0x4c(%ebp),%edx
4c98af:	b9 06 00 00 00       	mov    $0x6,%ecx
4c98b4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c98b7:	e8 7c ef f5 ff       	call   0x428838
4c98bc:	5f                   	pop    %edi
4c98bd:	5e                   	pop    %esi
4c98be:	5b                   	pop    %ebx
4c98bf:	8b e5                	mov    %ebp,%esp
4c98c1:	5d                   	pop    %ebp
4c98c2:	c2 04 00             	ret    $0x4
4c98c5:	8d 40 00             	lea    0x0(%eax),%eax
4c98c8:	55                   	push   %ebp
4c98c9:	8b ec                	mov    %esp,%ebp
4c98cb:	83 c4 d8             	add    $0xffffffd8,%esp
4c98ce:	53                   	push   %ebx
4c98cf:	56                   	push   %esi
4c98d0:	57                   	push   %edi
4c98d1:	8b f1                	mov    %ecx,%esi
4c98d3:	8d 7d e8             	lea    -0x18(%ebp),%edi
4c98d6:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c98d7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c98d8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c98d9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c98da:	8b da                	mov    %edx,%ebx
4c98dc:	89 45 fc             	mov    %eax,-0x4(%ebp)
4c98df:	8b 75 08             	mov    0x8(%ebp),%esi
4c98e2:	56                   	push   %esi
4c98e3:	8d 75 e8             	lea    -0x18(%ebp),%esi
4c98e6:	8d 7d d8             	lea    -0x28(%ebp),%edi
4c98e9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c98ea:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c98eb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c98ec:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c98ed:	5e                   	pop    %esi
4c98ee:	56                   	push   %esi
4c98ef:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4c98f2:	8b d3                	mov    %ebx,%edx
4c98f4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c98f7:	8b 38                	mov    (%eax),%edi
4c98f9:	ff 57 2c             	call   *0x2c(%edi)
4c98fc:	80 7e 18 00          	cmpb   $0x0,0x18(%esi)
4c9900:	75 1d                	jne    0x4c991f
4c9902:	b8 04 00 00 00       	mov    $0x4,%eax
4c9907:	89 45 dc             	mov    %eax,-0x24(%ebp)
4c990a:	83 c0 05             	add    $0x5,%eax
4c990d:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4c9910:	83 45 d8 02          	addl   $0x2,-0x28(%ebp)
4c9914:	8b 45 d8             	mov    -0x28(%ebp),%eax
4c9917:	83 c0 08             	add    $0x8,%eax
4c991a:	89 45 e0             	mov    %eax,-0x20(%ebp)
4c991d:	eb 1c                	jmp    0x4c993b
4c991f:	8b 45 e0             	mov    -0x20(%ebp),%eax
4c9922:	83 e8 09             	sub    $0x9,%eax
4c9925:	89 45 d8             	mov    %eax,-0x28(%ebp)
4c9928:	83 c0 05             	add    $0x5,%eax
4c992b:	89 45 e0             	mov    %eax,-0x20(%ebp)
4c992e:	83 45 dc 02          	addl   $0x2,-0x24(%ebp)
4c9932:	8b 45 dc             	mov    -0x24(%ebp),%eax
4c9935:	83 c0 08             	add    $0x8,%eax
4c9938:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4c993b:	b2 01                	mov    $0x1,%dl
4c993d:	a1 ec 6a 42 00       	mov    0x426aec,%eax
4c9942:	e8 89 38 f6 ff       	call   0x42d1d0
4c9947:	89 45 f8             	mov    %eax,-0x8(%ebp)
4c994a:	33 c0                	xor    %eax,%eax
4c994c:	55                   	push   %ebp
4c994d:	68 03 9a 4c 00       	push   $0x4c9a03
4c9952:	64 ff 30             	push   %fs:(%eax)
4c9955:	64 89 20             	mov    %esp,%fs:(%eax)
4c9958:	33 c0                	xor    %eax,%eax
4c995a:	8a 46 18             	mov    0x18(%esi),%al
4c995d:	03 c0                	add    %eax,%eax
4c995f:	8d 04 c5 cc b6 68 00 	lea    0x68b6cc(,%eax,8),%eax
4c9966:	50                   	push   %eax
4c9967:	6a 01                	push   $0x1
4c9969:	6a 01                	push   $0x1
4c996b:	6a 08                	push   $0x8
4c996d:	6a 08                	push   $0x8
4c996f:	e8 e4 da f3 ff       	call   0x407458
4c9974:	8b d0                	mov    %eax,%edx
4c9976:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c9979:	e8 86 4a f6 ff       	call   0x42e404
4c997e:	8b d6                	mov    %esi,%edx
4c9980:	b1 01                	mov    $0x1,%cl
4c9982:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c9985:	e8 e6 f8 ff ff       	call   0x4c9270
4c998a:	8b d0                	mov    %eax,%edx
4c998c:	8b 43 14             	mov    0x14(%ebx),%eax
4c998f:	e8 f0 e8 f5 ff       	call   0x428284
4c9994:	6a 00                	push   $0x0
4c9996:	8b c3                	mov    %ebx,%eax
4c9998:	e8 23 f3 f5 ff       	call   0x428cc0
4c999d:	50                   	push   %eax
4c999e:	e8 dd dd f3 ff       	call   0x407780
4c99a3:	68 ff ff ff 00       	push   $0xffffff
4c99a8:	8b c3                	mov    %ebx,%eax
4c99aa:	e8 11 f3 f5 ff       	call   0x428cc0
4c99af:	50                   	push   %eax
4c99b0:	e8 63 dd f3 ff       	call   0x407718
4c99b5:	68 46 07 e2 00       	push   $0xe20746
4c99ba:	6a 00                	push   $0x0
4c99bc:	6a 00                	push   $0x0
4c99be:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c99c1:	e8 d2 3d f6 ff       	call   0x42d798
4c99c6:	e8 f5 f2 f5 ff       	call   0x428cc0
4c99cb:	50                   	push   %eax
4c99cc:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4c99cf:	8b 7d dc             	mov    -0x24(%ebp),%edi
4c99d2:	2b c7                	sub    %edi,%eax
4c99d4:	50                   	push   %eax
4c99d5:	8b 45 e0             	mov    -0x20(%ebp),%eax
4c99d8:	8b 75 d8             	mov    -0x28(%ebp),%esi
4c99db:	2b c6                	sub    %esi,%eax
4c99dd:	50                   	push   %eax
4c99de:	57                   	push   %edi
4c99df:	56                   	push   %esi
4c99e0:	8b c3                	mov    %ebx,%eax
4c99e2:	e8 d9 f2 f5 ff       	call   0x428cc0
4c99e7:	50                   	push   %eax
4c99e8:	e8 4b da f3 ff       	call   0x407438
4c99ed:	33 c0                	xor    %eax,%eax
4c99ef:	5a                   	pop    %edx
4c99f0:	59                   	pop    %ecx
4c99f1:	59                   	pop    %ecx
4c99f2:	64 89 10             	mov    %edx,%fs:(%eax)
4c99f5:	68 0a 9a 4c 00       	push   $0x4c9a0a
4c99fa:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c99fd:	e8 76 a0 f3 ff       	call   0x403a78
4c9a02:	c3                   	ret
4c9a03:	e9 04 a8 f3 ff       	jmp    0x40420c
4c9a08:	eb f0                	jmp    0x4c99fa
4c9a0a:	5f                   	pop    %edi
4c9a0b:	5e                   	pop    %esi
4c9a0c:	5b                   	pop    %ebx
4c9a0d:	8b e5                	mov    %ebp,%esp
4c9a0f:	5d                   	pop    %ebp
4c9a10:	c2 04 00             	ret    $0x4
4c9a13:	90                   	nop
4c9a14:	55                   	push   %ebp
4c9a15:	8b ec                	mov    %esp,%ebp
4c9a17:	83 c4 94             	add    $0xffffff94,%esp
4c9a1a:	53                   	push   %ebx
4c9a1b:	56                   	push   %esi
4c9a1c:	57                   	push   %edi
4c9a1d:	8b 75 08             	mov    0x8(%ebp),%esi
4c9a20:	8d 7d f0             	lea    -0x10(%ebp),%edi
4c9a23:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c9a24:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c9a25:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4c9a28:	8b f2                	mov    %edx,%esi
4c9a2a:	89 45 fc             	mov    %eax,-0x4(%ebp)
4c9a2d:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4c9a30:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c9a33:	56                   	push   %esi
4c9a34:	8b f0                	mov    %eax,%esi
4c9a36:	8d 7d d7             	lea    -0x29(%ebp),%edi
4c9a39:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c9a3a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c9a3b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c9a3c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c9a3d:	5e                   	pop    %esi
4c9a3e:	8b 03                	mov    (%ebx),%eax
4c9a40:	8b d0                	mov    %eax,%edx
4c9a42:	81 e2 00 10 00 00    	and    $0x1000,%edx
4c9a48:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
4c9a4e:	75 0c                	jne    0x4c9a5c
4c9a50:	25 00 02 00 00       	and    $0x200,%eax
4c9a55:	3d 00 02 00 00       	cmp    $0x200,%eax
4c9a5a:	74 04                	je     0x4c9a60
4c9a5c:	33 c0                	xor    %eax,%eax
4c9a5e:	eb 02                	jmp    0x4c9a62
4c9a60:	b0 01                	mov    $0x1,%al
4c9a62:	88 45 ed             	mov    %al,-0x13(%ebp)
4c9a65:	6a 01                	push   $0x1
4c9a67:	6a 01                	push   $0x1
4c9a69:	8d 45 d7             	lea    -0x29(%ebp),%eax
4c9a6c:	50                   	push   %eax
4c9a6d:	e8 16 e1 f3 ff       	call   0x407b88
4c9a72:	ff 45 d7             	incl   -0x29(%ebp)
4c9a75:	8b 45 f0             	mov    -0x10(%ebp),%eax
4c9a78:	83 f8 01             	cmp    $0x1,%eax
4c9a7b:	0f 85 c5 00 00 00    	jne    0x4c9b46
4c9a81:	8b 45 f4             	mov    -0xc(%ebp),%eax
4c9a84:	a8 01                	test   $0x1,%al
4c9a86:	0f 95 45 ef          	setne  -0x11(%ebp)
4c9a8a:	a8 02                	test   $0x2,%al
4c9a8c:	0f 95 45 ee          	setne  -0x12(%ebp)
4c9a90:	a8 04                	test   $0x4,%al
4c9a92:	0f 95 c0             	setne  %al
4c9a95:	80 7d ef 00          	cmpb   $0x0,-0x11(%ebp)
4c9a99:	0f 85 94 00 00 00    	jne    0x4c9b33
4c9a9f:	0a 45 ee             	or     -0x12(%ebp),%al
4c9aa2:	75 06                	jne    0x4c9aaa
4c9aa4:	80 7d ed 00          	cmpb   $0x0,-0x13(%ebp)
4c9aa8:	74 10                	je     0x4c9aba
4c9aaa:	53                   	push   %ebx
4c9aab:	8d 4d d7             	lea    -0x29(%ebp),%ecx
4c9aae:	8b d6                	mov    %esi,%edx
4c9ab0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c9ab3:	8b 38                	mov    (%eax),%edi
4c9ab5:	ff 57 2c             	call   *0x2c(%edi)
4c9ab8:	eb 79                	jmp    0x4c9b33
4c9aba:	8b 03                	mov    (%ebx),%eax
4c9abc:	25 00 10 00 00       	and    $0x1000,%eax
4c9ac1:	3d 00 10 00 00       	cmp    $0x1000,%eax
4c9ac6:	75 6b                	jne    0x4c9b33
4c9ac8:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c9acb:	56                   	push   %esi
4c9acc:	8b f0                	mov    %eax,%esi
4c9ace:	8d 7d d7             	lea    -0x29(%ebp),%edi
4c9ad1:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c9ad2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c9ad3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c9ad4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c9ad5:	5e                   	pop    %esi
4c9ad6:	80 7d ed 00          	cmpb   $0x0,-0x13(%ebp)
4c9ada:	75 25                	jne    0x4c9b01
4c9adc:	6a 01                	push   $0x1
4c9ade:	8b c6                	mov    %esi,%eax
4c9ae0:	e8 db f1 f5 ff       	call   0x428cc0
4c9ae5:	8d 55 d7             	lea    -0x29(%ebp),%edx
4c9ae8:	b9 05 00 00 80       	mov    $0x80000005,%ecx
4c9aed:	e8 3a f3 fb ff       	call   0x488e2c
4c9af2:	ba 05 00 00 80       	mov    $0x80000005,%edx
4c9af7:	8b 46 10             	mov    0x10(%esi),%eax
4c9afa:	e8 85 e4 f5 ff       	call   0x427f84
4c9aff:	eb 16                	jmp    0x4c9b17
4c9b01:	8b d3                	mov    %ebx,%edx
4c9b03:	b1 02                	mov    $0x2,%cl
4c9b05:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c9b08:	e8 93 f6 ff ff       	call   0x4c91a0
4c9b0d:	8b d0                	mov    %eax,%edx
4c9b0f:	8b 46 10             	mov    0x10(%esi),%eax
4c9b12:	e8 6d e4 f5 ff       	call   0x427f84
4c9b17:	8b 55 d7             	mov    -0x29(%ebp),%edx
4c9b1a:	4a                   	dec    %edx
4c9b1b:	8b 4d db             	mov    -0x25(%ebp),%ecx
4c9b1e:	8b c6                	mov    %esi,%eax
4c9b20:	e8 af ec f5 ff       	call   0x4287d4
4c9b25:	8b 55 d7             	mov    -0x29(%ebp),%edx
4c9b28:	4a                   	dec    %edx
4c9b29:	8b 4d e3             	mov    -0x1d(%ebp),%ecx
4c9b2c:	8b c6                	mov    %esi,%eax
4c9b2e:	e8 41 ec f5 ff       	call   0x428774
4c9b33:	53                   	push   %ebx
4c9b34:	8d 4d d7             	lea    -0x29(%ebp),%ecx
4c9b37:	8b d6                	mov    %esi,%edx
4c9b39:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c9b3c:	8b 18                	mov    (%eax),%ebx
4c9b3e:	ff 53 4c             	call   *0x4c(%ebx)
4c9b41:	e9 16 03 00 00       	jmp    0x4c9e5c
4c9b46:	83 f8 02             	cmp    $0x2,%eax
4c9b49:	0f 85 0d 03 00 00    	jne    0x4c9e5c
4c9b4f:	8b 45 f4             	mov    -0xc(%ebp),%eax
4c9b52:	a8 01                	test   $0x1,%al
4c9b54:	0f 95 45 ef          	setne  -0x11(%ebp)
4c9b58:	a8 02                	test   $0x2,%al
4c9b5a:	0f 95 45 ee          	setne  -0x12(%ebp)
4c9b5e:	56                   	push   %esi
4c9b5f:	8d 75 d7             	lea    -0x29(%ebp),%esi
4c9b62:	8d 7d c7             	lea    -0x39(%ebp),%edi
4c9b65:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c9b66:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c9b67:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c9b68:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c9b69:	5e                   	pop    %esi
4c9b6a:	8b 55 db             	mov    -0x25(%ebp),%edx
4c9b6d:	03 55 e3             	add    -0x1d(%ebp),%edx
4c9b70:	42                   	inc    %edx
4c9b71:	d1 fa                	sar    $1,%edx
4c9b73:	79 03                	jns    0x4c9b78
4c9b75:	83 d2 00             	adc    $0x0,%edx
4c9b78:	89 55 d3             	mov    %edx,-0x2d(%ebp)
4c9b7b:	a8 04                	test   $0x4,%al
4c9b7d:	0f 95 c0             	setne  %al
4c9b80:	8a 53 09             	mov    0x9(%ebx),%dl
4c9b83:	88 55 e7             	mov    %dl,-0x19(%ebp)
4c9b86:	88 43 09             	mov    %al,0x9(%ebx)
4c9b89:	80 7d ef 00          	cmpb   $0x0,-0x11(%ebp)
4c9b8d:	0f 85 a3 00 00 00    	jne    0x4c9c36
4c9b93:	0a 45 ee             	or     -0x12(%ebp),%al
4c9b96:	75 06                	jne    0x4c9b9e
4c9b98:	80 7d ed 00          	cmpb   $0x0,-0x13(%ebp)
4c9b9c:	74 13                	je     0x4c9bb1
4c9b9e:	53                   	push   %ebx
4c9b9f:	8d 4d c7             	lea    -0x39(%ebp),%ecx
4c9ba2:	8b d6                	mov    %esi,%edx
4c9ba4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c9ba7:	8b 38                	mov    (%eax),%edi
4c9ba9:	ff 57 2c             	call   *0x2c(%edi)
4c9bac:	e9 85 00 00 00       	jmp    0x4c9c36
4c9bb1:	8b 03                	mov    (%ebx),%eax
4c9bb3:	25 00 10 00 00       	and    $0x1000,%eax
4c9bb8:	3d 00 10 00 00       	cmp    $0x1000,%eax
4c9bbd:	75 77                	jne    0x4c9c36
4c9bbf:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c9bc2:	8b 00                	mov    (%eax),%eax
4c9bc4:	89 45 c7             	mov    %eax,-0x39(%ebp)
4c9bc7:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c9bca:	8b 40 04             	mov    0x4(%eax),%eax
4c9bcd:	89 45 cb             	mov    %eax,-0x35(%ebp)
4c9bd0:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c9bd3:	8b 40 08             	mov    0x8(%eax),%eax
4c9bd6:	89 45 cf             	mov    %eax,-0x31(%ebp)
4c9bd9:	80 7d ed 00          	cmpb   $0x0,-0x13(%ebp)
4c9bdd:	75 25                	jne    0x4c9c04
4c9bdf:	6a 01                	push   $0x1
4c9be1:	8b c6                	mov    %esi,%eax
4c9be3:	e8 d8 f0 f5 ff       	call   0x428cc0
4c9be8:	8d 55 c7             	lea    -0x39(%ebp),%edx
4c9beb:	b9 05 00 00 80       	mov    $0x80000005,%ecx
4c9bf0:	e8 37 f2 fb ff       	call   0x488e2c
4c9bf5:	ba 05 00 00 80       	mov    $0x80000005,%edx
4c9bfa:	8b 46 10             	mov    0x10(%esi),%eax
4c9bfd:	e8 82 e3 f5 ff       	call   0x427f84
4c9c02:	eb 16                	jmp    0x4c9c1a
4c9c04:	8b d3                	mov    %ebx,%edx
4c9c06:	b1 02                	mov    $0x2,%cl
4c9c08:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c9c0b:	e8 90 f5 ff ff       	call   0x4c91a0
4c9c10:	8b d0                	mov    %eax,%edx
4c9c12:	8b 46 10             	mov    0x10(%esi),%eax
4c9c15:	e8 6a e3 f5 ff       	call   0x427f84
4c9c1a:	8b 55 c7             	mov    -0x39(%ebp),%edx
4c9c1d:	4a                   	dec    %edx
4c9c1e:	8b 4d cb             	mov    -0x35(%ebp),%ecx
4c9c21:	8b c6                	mov    %esi,%eax
4c9c23:	e8 ac eb f5 ff       	call   0x4287d4
4c9c28:	8b 55 c7             	mov    -0x39(%ebp),%edx
4c9c2b:	4a                   	dec    %edx
4c9c2c:	8b 4d d3             	mov    -0x2d(%ebp),%ecx
4c9c2f:	8b c6                	mov    %esi,%eax
4c9c31:	e8 3e eb f5 ff       	call   0x428774
4c9c36:	8b 7d c7             	mov    -0x39(%ebp),%edi
4c9c39:	03 7d cf             	add    -0x31(%ebp),%edi
4c9c3c:	d1 ff                	sar    $1,%edi