48aa56:	6a 02                	push   $0x2
48aa58:	5a                   	pop    %edx
48aa59:	8d 70 01             	lea    0x1(%eax),%esi
48aa5c:	8b c6                	mov    %esi,%eax
48aa5e:	f7 e2                	mul    %edx
48aa60:	0f 90 c1             	seto   %cl
48aa63:	f7 d9                	neg    %ecx
48aa65:	0b c8                	or     %eax,%ecx
48aa67:	51                   	push   %ecx
48aa68:	e8 89 65 f9 ff       	call   0x420ff6
48aa6d:	59                   	pop    %ecx
48aa6e:	56                   	push   %esi
48aa6f:	50                   	push   %eax
48aa70:	89 44 24 24          	mov    %eax,0x24(%esp)
48aa74:	8b 45 0c             	mov    0xc(%ebp),%eax
48aa77:	ff 30                	push   (%eax)
48aa79:	ff 15 6c f6 48 00    	call   *0x48f66c
48aa7f:	57                   	push   %edi
48aa80:	8d 44 24 34          	lea    0x34(%esp),%eax
48aa84:	50                   	push   %eax
48aa85:	6a ff                	push   $0xffffffff
48aa87:	ff 74 24 28          	push   0x28(%esp)
48aa8b:	53                   	push   %ebx
48aa8c:	ff 15 34 f5 48 00    	call   *0x48f534
48aa92:	83 7c 24 24 00       	cmpl   $0x0,0x24(%esp)
48aa97:	74 3a                	je     0x48aad3
48aa99:	8b 74 24 18          	mov    0x18(%esp),%esi
48aa9d:	8d 7c 24 30          	lea    0x30(%esp),%edi
48aaa1:	6a 11                	push   $0x11
48aaa3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
48aaa4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
48aaa5:	a5                   	movsl  %ds:(%esi),%es:(%edi)
48aaa6:	a5                   	movsl  %ds:(%esi),%es:(%edi)
48aaa7:	ff 44 24 34          	incl   0x34(%esp)
48aaab:	ff 44 24 38          	incl   0x38(%esp)
48aaaf:	ff 15 28 f5 48 00    	call   *0x48f528
48aab5:	50                   	push   %eax
48aab6:	53                   	push   %ebx
48aab7:	ff 15 20 f1 48 00    	call   *0x48f120
48aabd:	ff 74 24 0c          	push   0xc(%esp)
48aac1:	8d 44 24 34          	lea    0x34(%esp),%eax
48aac5:	50                   	push   %eax
48aac6:	6a ff                	push   $0xffffffff
48aac8:	ff 74 24 28          	push   0x28(%esp)
48aacc:	53                   	push   %ebx
48aacd:	ff 15 34 f5 48 00    	call   *0x48f534
48aad3:	83 7c 24 14 00       	cmpl   $0x0,0x14(%esp)
48aad8:	74 45                	je     0x48ab1f
48aada:	8b 74 24 18          	mov    0x18(%esp),%esi
48aade:	8d 7c 24 30          	lea    0x30(%esp),%edi
48aae2:	6a 00                	push   $0x0
48aae4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
48aae5:	a5                   	movsl  %ds:(%esi),%es:(%edi)
48aae6:	a5                   	movsl  %ds:(%esi),%es:(%edi)
48aae7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
48aae8:	ff 15 48 f1 48 00    	call   *0x48f148
48aaee:	8b f0                	mov    %eax,%esi
48aaf0:	8d 44 24 30          	lea    0x30(%esp),%eax
48aaf4:	56                   	push   %esi
48aaf5:	50                   	push   %eax
48aaf6:	53                   	push   %ebx
48aaf7:	ff 15 38 f5 48 00    	call   *0x48f538
48aafd:	56                   	push   %esi
48aafe:	ff 15 c8 f0 48 00    	call   *0x48f0c8
48ab04:	6a fc                	push   $0xfffffffc
48ab06:	6a fc                	push   $0xfffffffc
48ab08:	8d 44 24 38          	lea    0x38(%esp),%eax
48ab0c:	50                   	push   %eax
48ab0d:	ff 15 2c f5 48 00    	call   *0x48f52c
48ab13:	8d 44 24 30          	lea    0x30(%esp),%eax
48ab17:	50                   	push   %eax
48ab18:	53                   	push   %ebx
48ab19:	ff 15 30 f5 48 00    	call   *0x48f530
48ab1f:	ff 74 24 1c          	push   0x1c(%esp)
48ab23:	e8 44 65 f9 ff       	call   0x42106c
48ab28:	59                   	pop    %ecx
48ab29:	ff 74 24 28          	push   0x28(%esp)
48ab2d:	53                   	push   %ebx
48ab2e:	ff 15 ec f0 48 00    	call   *0x48f0ec
48ab34:	ff 74 24 10          	push   0x10(%esp)
48ab38:	ff 15 c8 f0 48 00    	call   *0x48f0c8
48ab3e:	ff 74 24 20          	push   0x20(%esp)
48ab42:	53                   	push   %ebx
48ab43:	ff 15 20 f1 48 00    	call   *0x48f120
48ab49:	ff 74 24 2c          	push   0x2c(%esp)
48ab4d:	53                   	push   %ebx
48ab4e:	ff 15 40 f1 48 00    	call   *0x48f140
48ab54:	33 c0                	xor    %eax,%eax
48ab56:	40                   	inc    %eax
48ab57:	5f                   	pop    %edi
48ab58:	5e                   	pop    %esi
48ab59:	5b                   	pop    %ebx
48ab5a:	8b e5                	mov    %ebp,%esp
48ab5c:	5d                   	pop    %ebp
48ab5d:	c2 08 00             	ret    $0x8
48ab60:	55                   	push   %ebp
48ab61:	8b ec                	mov    %esp,%ebp
48ab63:	83 ec 34             	sub    $0x34,%esp
48ab66:	8b 45 08             	mov    0x8(%ebp),%eax
48ab69:	53                   	push   %ebx
48ab6a:	56                   	push   %esi
48ab6b:	57                   	push   %edi
48ab6c:	8b 70 10             	mov    0x10(%eax),%esi
48ab6f:	8b ce                	mov    %esi,%ecx
48ab71:	8b 58 18             	mov    0x18(%eax),%ebx
48ab74:	83 e1 10             	and    $0x10,%ecx
48ab77:	8b 3d 28 f5 48 00    	mov    0x48f528,%edi
48ab7d:	83 e6 06             	and    $0x6,%esi
48ab80:	89 4d f0             	mov    %ecx,-0x10(%ebp)
48ab83:	89 75 ec             	mov    %esi,-0x14(%ebp)
48ab86:	74 04                	je     0x48ab8c
48ab88:	6a 0e                	push   $0xe
48ab8a:	eb 0d                	jmp    0x48ab99
48ab8c:	8b 45 0c             	mov    0xc(%ebp),%eax
48ab8f:	8b 40 4c             	mov    0x4c(%eax),%eax
48ab92:	83 f8 ff             	cmp    $0xffffffff,%eax
48ab95:	75 04                	jne    0x48ab9b
48ab97:	6a 12                	push   $0x12
48ab99:	ff d7                	call   *%edi
48ab9b:	50                   	push   %eax
48ab9c:	53                   	push   %ebx
48ab9d:	ff 15 20 f1 48 00    	call   *0x48f120
48aba3:	89 45 f8             	mov    %eax,-0x8(%ebp)
48aba6:	8b 45 0c             	mov    0xc(%ebp),%eax
48aba9:	8b 40 48             	mov    0x48(%eax),%eax
48abac:	83 f8 ff             	cmp    $0xffffffff,%eax
48abaf:	75 11                	jne    0x48abc2
48abb1:	6a 0f                	push   $0xf
48abb3:	ff 15 30 f7 48 00    	call   *0x48f730
48abb9:	6a 0f                	push   $0xf
48abbb:	89 45 fc             	mov    %eax,-0x4(%ebp)
48abbe:	ff d7                	call   *%edi
48abc0:	eb 10                	jmp    0x48abd2
48abc2:	50                   	push   %eax
48abc3:	ff 15 48 f1 48 00    	call   *0x48f148
48abc9:	89 45 fc             	mov    %eax,-0x4(%ebp)
48abcc:	8b 45 0c             	mov    0xc(%ebp),%eax
48abcf:	8b 40 48             	mov    0x48(%eax),%eax
48abd2:	89 45 f4             	mov    %eax,-0xc(%ebp)
48abd5:	85 f6                	test   %esi,%esi
48abd7:	74 06                	je     0x48abdf
48abd9:	6a 11                	push   $0x11
48abdb:	ff d7                	call   *%edi
48abdd:	eb 05                	jmp    0x48abe4
48abdf:	b8 00 3c 74 00       	mov    $0x743c00,%eax
48abe4:	50                   	push   %eax
48abe5:	6a 01                	push   $0x1
48abe7:	6a 00                	push   $0x0
48abe9:	ff 15 44 f1 48 00    	call   *0x48f144
48abef:	8b 35 ec f0 48 00    	mov    0x48f0ec,%esi
48abf5:	50                   	push   %eax
48abf6:	53                   	push   %ebx
48abf7:	89 45 e0             	mov    %eax,-0x20(%ebp)
48abfa:	ff d6                	call   *%esi
48abfc:	ff 75 f4             	push   -0xc(%ebp)
48abff:	89 45 e4             	mov    %eax,-0x1c(%ebp)
48ac02:	53                   	push   %ebx
48ac03:	ff 15 40 f1 48 00    	call   *0x48f140
48ac09:	ff 75 fc             	push   -0x4(%ebp)
48ac0c:	89 45 dc             	mov    %eax,-0x24(%ebp)
48ac0f:	53                   	push   %ebx
48ac10:	ff d6                	call   *%esi
48ac12:	89 45 e8             	mov    %eax,-0x18(%ebp)
48ac15:	8d 7d cc             	lea    -0x34(%ebp),%edi
48ac18:	8b 45 08             	mov    0x8(%ebp),%eax
48ac1b:	83 c0 1c             	add    $0x1c,%eax
48ac1e:	8b f0                	mov    %eax,%esi
48ac20:	89 45 f4             	mov    %eax,-0xc(%ebp)
48ac23:	6a ff                	push   $0xffffffff
48ac25:	6a ff                	push   $0xffffffff
48ac27:	8d 45 cc             	lea    -0x34(%ebp),%eax
48ac2a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
48ac2b:	50                   	push   %eax
48ac2c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
48ac2d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
48ac2e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
48ac2f:	ff 15 2c f5 48 00    	call   *0x48f52c
48ac35:	6a 05                	push   $0x5
48ac37:	6a 05                	push   $0x5
48ac39:	ff 75 d8             	push   -0x28(%ebp)
48ac3c:	ff 75 d4             	push   -0x2c(%ebp)
48ac3f:	ff 75 d0             	push   -0x30(%ebp)
48ac42:	ff 75 cc             	push   -0x34(%ebp)
48ac45:	53                   	push   %ebx
48ac46:	ff 15 3c f1 48 00    	call   *0x48f13c
48ac4c:	8b 45 0c             	mov    0xc(%ebp),%eax
48ac4f:	be 04 01 00 00       	mov    $0x104,%esi
48ac54:	6a f0                	push   $0xfffffff0
48ac56:	89 75 08             	mov    %esi,0x8(%ebp)
48ac59:	ff 30                	push   (%eax)
48ac5b:	ff 15 5c f6 48 00    	call   *0x48f65c
48ac61:	a9 00 20 00 00       	test   $0x2000,%eax
48ac66:	75 06                	jne    0x48ac6e
48ac68:	83 c6 20             	add    $0x20,%esi
48ac6b:	89 75 08             	mov    %esi,0x8(%ebp)
48ac6e:	ba 00 03 00 00       	mov    $0x300,%edx
48ac73:	8b c8                	mov    %eax,%ecx
48ac75:	23 ca                	and    %edx,%ecx
48ac77:	3b ca                	cmp    %edx,%ecx
48ac79:	75 06                	jne    0x48ac81
48ac7b:	83 ce 01             	or     $0x1,%esi
48ac7e:	89 75 08             	mov    %esi,0x8(%ebp)
48ac81:	6a 02                	push   $0x2
48ac83:	59                   	pop    %ecx
48ac84:	a9 00 02 00 00       	test   $0x200,%eax
48ac89:	74 04                	je     0x48ac8f
48ac8b:	0b f1                	or     %ecx,%esi
48ac8d:	eb 0a                	jmp    0x48ac99
48ac8f:	a9 00 01 00 00       	test   $0x100,%eax
48ac94:	75 06                	jne    0x48ac9c
48ac96:	83 ce 01             	or     $0x1,%esi
48ac99:	89 75 08             	mov    %esi,0x8(%ebp)
48ac9c:	8b 75 0c             	mov    0xc(%ebp),%esi
48ac9f:	6a 00                	push   $0x0
48aca1:	6a 00                	push   $0x0
48aca3:	6a 0e                	push   $0xe
48aca5:	ff 36                	push   (%esi)
48aca7:	ff 15 88 f6 48 00    	call   *0x48f688
48acad:	33 c9                	xor    %ecx,%ecx
48acaf:	6a 02                	push   $0x2
48acb1:	5a                   	pop    %edx
48acb2:	8d 78 01             	lea    0x1(%eax),%edi
48acb5:	8b c7                	mov    %edi,%eax
48acb7:	f7 e2                	mul    %edx
48acb9:	0f 90 c1             	seto   %cl
48acbc:	f7 d9                	neg    %ecx
48acbe:	0b c8                	or     %eax,%ecx
48acc0:	51                   	push   %ecx
48acc1:	e8 30 63 f9 ff       	call   0x420ff6
48acc6:	59                   	pop    %ecx
48acc7:	57                   	push   %edi
48acc8:	50                   	push   %eax
48acc9:	ff 36                	push   (%esi)
48accb:	89 45 0c             	mov    %eax,0xc(%ebp)
48acce:	ff 15 6c f6 48 00    	call   *0x48f66c
48acd4:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
48acd8:	74 23                	je     0x48acfd
48acda:	8b 75 f4             	mov    -0xc(%ebp),%esi
48acdd:	8d 7d cc             	lea    -0x34(%ebp),%edi
48ace0:	6a fd                	push   $0xfffffffd
48ace2:	6a fd                	push   $0xfffffffd
48ace4:	8d 45 cc             	lea    -0x34(%ebp),%eax
48ace7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
48ace8:	50                   	push   %eax
48ace9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
48acea:	a5                   	movsl  %ds:(%esi),%es:(%edi)
48aceb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
48acec:	ff 15 2c f5 48 00    	call   *0x48f52c
48acf2:	8d 45 cc             	lea    -0x34(%ebp),%eax
48acf5:	50                   	push   %eax
48acf6:	53                   	push   %ebx
48acf7:	ff 15 30 f5 48 00    	call   *0x48f530
48acfd:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
48ad01:	74 10                	je     0x48ad13
48ad03:	6a 11                	push   $0x11
48ad05:	ff 15 28 f5 48 00    	call   *0x48f528
48ad0b:	50                   	push   %eax
48ad0c:	53                   	push   %ebx
48ad0d:	ff 15 20 f1 48 00    	call   *0x48f120
48ad13:	ff 75 08             	push   0x8(%ebp)
48ad16:	8b 75 0c             	mov    0xc(%ebp),%esi
48ad19:	8d 45 cc             	lea    -0x34(%ebp),%eax
48ad1c:	50                   	push   %eax
48ad1d:	6a ff                	push   $0xffffffff
48ad1f:	56                   	push   %esi
48ad20:	53                   	push   %ebx
48ad21:	ff 15 34 f5 48 00    	call   *0x48f534
48ad27:	56                   	push   %esi
48ad28:	e8 3f 63 f9 ff       	call   0x42106c
48ad2d:	8b 3d ec f0 48 00    	mov    0x48f0ec,%edi
48ad33:	59                   	pop    %ecx
48ad34:	ff 75 e8             	push   -0x18(%ebp)
48ad37:	53                   	push   %ebx
48ad38:	ff d7                	call   *%edi
48ad3a:	ff 75 fc             	push   -0x4(%ebp)
48ad3d:	8b 35 c8 f0 48 00    	mov    0x48f0c8,%esi
48ad43:	ff d6                	call   *%esi
48ad45:	ff 75 e4             	push   -0x1c(%ebp)
48ad48:	53                   	push   %ebx
48ad49:	ff d7                	call   *%edi
48ad4b:	ff 75 e0             	push   -0x20(%ebp)
48ad4e:	ff d6                	call   *%esi
48ad50:	ff 75 f8             	push   -0x8(%ebp)
48ad53:	53                   	push   %ebx
48ad54:	ff 15 20 f1 48 00    	call   *0x48f120
48ad5a:	ff 75 dc             	push   -0x24(%ebp)
48ad5d:	53                   	push   %ebx
48ad5e:	ff 15 40 f1 48 00    	call   *0x48f140
48ad64:	5f                   	pop    %edi
48ad65:	33 c0                	xor    %eax,%eax
48ad67:	5e                   	pop    %esi
48ad68:	40                   	inc    %eax
48ad69:	5b                   	pop    %ebx
48ad6a:	8b e5                	mov    %ebp,%esp
48ad6c:	5d                   	pop    %ebp
48ad6d:	c2 08 00             	ret    $0x8
48ad70:	55                   	push   %ebp
48ad71:	8b ec                	mov    %esp,%ebp
48ad73:	5d                   	pop    %ebp
48ad74:	e9 00 00 00 00       	jmp    0x48ad79
48ad79:	55                   	push   %ebp
48ad7a:	8b ec                	mov    %esp,%ebp
48ad7c:	83 ec 10             	sub    $0x10,%esp
48ad7f:	56                   	push   %esi
48ad80:	57                   	push   %edi
48ad81:	8b 7d 08             	mov    0x8(%ebp),%edi
48ad84:	8d 45 f0             	lea    -0x10(%ebp),%eax
48ad87:	50                   	push   %eax
48ad88:	57                   	push   %edi
48ad89:	ff 15 94 f6 48 00    	call   *0x48f694
48ad8f:	8b 75 fc             	mov    -0x4(%ebp),%esi
48ad92:	8b 45 f8             	mov    -0x8(%ebp),%eax
48ad95:	2b 45 f0             	sub    -0x10(%ebp),%eax
48ad98:	2b 75 f4             	sub    -0xc(%ebp),%esi
48ad9b:	0f af f0             	imul   %eax,%esi
48ad9e:	a1 54 68 4c 00       	mov    0x4c6854,%eax
48ada3:	3b 45 f0             	cmp    -0x10(%ebp),%eax
48ada6:	7c 3e                	jl     0x48ade6
48ada8:	3b 45 f8             	cmp    -0x8(%ebp),%eax
48adab:	7f 39                	jg     0x48ade6
48adad:	a1 58 68 4c 00       	mov    0x4c6858,%eax
48adb2:	3b 45 f4             	cmp    -0xc(%ebp),%eax
48adb5:	7c 2f                	jl     0x48ade6
48adb7:	3b 45 fc             	cmp    -0x4(%ebp),%eax
48adba:	7f 2a                	jg     0x48ade6
48adbc:	3b 35 50 68 4c 00    	cmp    0x4c6850,%esi
48adc2:	7f 22                	jg     0x48ade6
48adc4:	57                   	push   %edi
48adc5:	ff 15 50 f6 48 00    	call   *0x48f650
48adcb:	85 c0                	test   %eax,%eax
48adcd:	74 17                	je     0x48ade6
48adcf:	57                   	push   %edi
48add0:	ff 15 84 f6 48 00    	call   *0x48f684
48add6:	85 c0                	test   %eax,%eax
48add8:	74 0c                	je     0x48ade6
48adda:	89 3d 4c 68 4c 00    	mov    %edi,0x4c684c
48ade0:	89 35 50 68 4c 00    	mov    %esi,0x4c6850
48ade6:	33 c0                	xor    %eax,%eax
48ade8:	5f                   	pop    %edi
48ade9:	40                   	inc    %eax
48adea:	5e                   	pop    %esi
48adeb:	8b e5                	mov    %ebp,%esp
48aded:	5d                   	pop    %ebp
48adee:	c2 08 00             	ret    $0x8
48adf1:	55                   	push   %ebp
48adf2:	8b ec                	mov    %esp,%ebp
48adf4:	83 ec 20             	sub    $0x20,%esp
48adf7:	53                   	push   %ebx
48adf8:	8b 5d 08             	mov    0x8(%ebp),%ebx
48adfb:	83 c8 ff             	or     $0xffffffff,%eax