44fc37:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
44fc3a:	2b 4d cc             	sub    -0x34(%ebp),%ecx
44fc3d:	2b c1                	sub    %ecx,%eax
44fc3f:	8b 4d f4             	mov    -0xc(%ebp),%ecx
44fc42:	89 01                	mov    %eax,(%ecx)
44fc44:	80 fa 02             	cmp    $0x2,%dl
44fc47:	75 15                	jne    0x44fc5e
44fc49:	8b 45 fc             	mov    -0x4(%ebp),%eax
44fc4c:	66 be d0 ff          	mov    $0xffd0,%si
44fc50:	e8 1f 40 fb ff       	call   0x403c74
44fc55:	eb 07                	jmp    0x44fc5e
44fc57:	8b 45 f4             	mov    -0xc(%ebp),%eax
44fc5a:	33 d2                	xor    %edx,%edx
44fc5c:	89 10                	mov    %edx,(%eax)
44fc5e:	8a 45 f3             	mov    -0xd(%ebp),%al
44fc61:	5f                   	pop    %edi
44fc62:	5e                   	pop    %esi
44fc63:	5b                   	pop    %ebx
44fc64:	8b e5                	mov    %ebp,%esp
44fc66:	5d                   	pop    %ebp
44fc67:	c3                   	ret
44fc68:	83 ea 01             	sub    $0x1,%edx
44fc6b:	72 04                	jb     0x44fc71
44fc6d:	74 1f                	je     0x44fc8e
44fc6f:	eb 39                	jmp    0x44fcaa
44fc71:	3a 88 63 01 00 00    	cmp    0x163(%eax),%cl
44fc77:	74 31                	je     0x44fcaa
44fc79:	88 88 63 01 00 00    	mov    %cl,0x163(%eax)
44fc7f:	6a 00                	push   $0x0
44fc81:	33 c9                	xor    %ecx,%ecx
44fc83:	ba 3b b0 00 00       	mov    $0xb03b,%edx
44fc88:	e8 2b 9d ff ff       	call   0x4499b8
44fc8d:	c3                   	ret
44fc8e:	3a 88 64 01 00 00    	cmp    0x164(%eax),%cl
44fc94:	74 14                	je     0x44fcaa
44fc96:	88 88 64 01 00 00    	mov    %cl,0x164(%eax)
44fc9c:	6a 00                	push   $0x0
44fc9e:	33 c9                	xor    %ecx,%ecx
44fca0:	ba 3b b0 00 00       	mov    $0xb03b,%edx
44fca5:	e8 0e 9d ff ff       	call   0x4499b8
44fcaa:	c3                   	ret
44fcab:	90                   	nop
44fcac:	53                   	push   %ebx
44fcad:	51                   	push   %ecx
44fcae:	88 14 24             	mov    %dl,(%esp)
44fcb1:	8b d8                	mov    %eax,%ebx
44fcb3:	8a 83 62 01 00 00    	mov    0x162(%ebx),%al
44fcb9:	3a 04 24             	cmp    (%esp),%al
44fcbc:	74 19                	je     0x44fcd7
44fcbe:	8a 04 24             	mov    (%esp),%al
44fcc1:	88 83 62 01 00 00    	mov    %al,0x162(%ebx)
44fcc7:	6a 00                	push   $0x0
44fcc9:	33 c9                	xor    %ecx,%ecx
44fccb:	ba 3b b0 00 00       	mov    $0xb03b,%edx
44fcd0:	8b c3                	mov    %ebx,%eax
44fcd2:	e8 e1 9c ff ff       	call   0x4499b8
44fcd7:	5a                   	pop    %edx
44fcd8:	5b                   	pop    %ebx
44fcd9:	c3                   	ret
44fcda:	8b c0                	mov    %eax,%eax
44fcdc:	3a 90 65 01 00 00    	cmp    0x165(%eax),%dl
44fce2:	74 14                	je     0x44fcf8
44fce4:	88 90 65 01 00 00    	mov    %dl,0x165(%eax)
44fcea:	6a 00                	push   $0x0
44fcec:	33 c9                	xor    %ecx,%ecx
44fcee:	ba 3b b0 00 00       	mov    $0xb03b,%edx
44fcf3:	e8 c0 9c ff ff       	call   0x4499b8
44fcf8:	c3                   	ret
44fcf9:	8d 40 00             	lea    0x0(%eax),%eax
44fcfc:	3b 90 68 01 00 00    	cmp    0x168(%eax),%edx
44fd02:	74 14                	je     0x44fd18
44fd04:	89 90 68 01 00 00    	mov    %edx,0x168(%eax)
44fd0a:	6a 00                	push   $0x0
44fd0c:	33 c9                	xor    %ecx,%ecx
44fd0e:	ba 3b b0 00 00       	mov    $0xb03b,%edx
44fd13:	e8 a0 9c ff ff       	call   0x4499b8
44fd18:	c3                   	ret
44fd19:	8d 40 00             	lea    0x0(%eax),%eax
44fd1c:	53                   	push   %ebx
44fd1d:	56                   	push   %esi
44fd1e:	57                   	push   %edi
44fd1f:	8b f2                	mov    %edx,%esi
44fd21:	8b d8                	mov    %eax,%ebx
44fd23:	8b d6                	mov    %esi,%edx
44fd25:	8b c3                	mov    %ebx,%eax
44fd27:	8b 08                	mov    (%eax),%ecx
44fd29:	ff 51 f0             	call   *-0x10(%ecx)
44fd2c:	8b 46 08             	mov    0x8(%esi),%eax
44fd2f:	8b f0                	mov    %eax,%esi
44fd31:	8b 83 6c 01 00 00    	mov    0x16c(%ebx),%eax
44fd37:	f7 d8                	neg    %eax
44fd39:	50                   	push   %eax
44fd3a:	8b 93 6c 01 00 00    	mov    0x16c(%ebx),%edx
44fd40:	f7 da                	neg    %edx
44fd42:	50                   	push   %eax
44fd43:	8b fe                	mov    %esi,%edi
44fd45:	57                   	push   %edi
44fd46:	e8 3d 7e fb ff       	call   0x407b88
44fd4b:	80 bb 65 01 00 00 00 	cmpb   $0x0,0x165(%ebx)
44fd52:	74 51                	je     0x44fda5
44fd54:	33 c0                	xor    %eax,%eax
44fd56:	80 bb 63 01 00 00 00 	cmpb   $0x0,0x163(%ebx)
44fd5d:	74 06                	je     0x44fd65
44fd5f:	03 83 68 01 00 00    	add    0x168(%ebx),%eax
44fd65:	80 bb 64 01 00 00 00 	cmpb   $0x0,0x164(%ebx)
44fd6c:	74 06                	je     0x44fd74
44fd6e:	03 83 68 01 00 00    	add    0x168(%ebx),%eax
44fd74:	8b f7                	mov    %edi,%esi
44fd76:	f6 83 62 01 00 00 01 	testb  $0x1,0x162(%ebx)
44fd7d:	74 02                	je     0x44fd81
44fd7f:	01 06                	add    %eax,(%esi)
44fd81:	f6 83 62 01 00 00 02 	testb  $0x2,0x162(%ebx)
44fd88:	74 03                	je     0x44fd8d
44fd8a:	01 46 04             	add    %eax,0x4(%esi)
44fd8d:	f6 83 62 01 00 00 04 	testb  $0x4,0x162(%ebx)
44fd94:	74 03                	je     0x44fd99
44fd96:	29 46 08             	sub    %eax,0x8(%esi)
44fd99:	f6 83 62 01 00 00 08 	testb  $0x8,0x162(%ebx)
44fda0:	74 03                	je     0x44fda5
44fda2:	29 46 0c             	sub    %eax,0xc(%esi)
44fda5:	5f                   	pop    %edi
44fda6:	5e                   	pop    %esi
44fda7:	5b                   	pop    %ebx
44fda8:	c3                   	ret
44fda9:	8d 40 00             	lea    0x0(%eax),%eax
44fdac:	55                   	push   %ebp
44fdad:	8b ec                	mov    %esp,%ebp
44fdaf:	83 c4 c4             	add    $0xffffffc4,%esp
44fdb2:	53                   	push   %ebx
44fdb3:	56                   	push   %esi
44fdb4:	57                   	push   %edi
44fdb5:	89 55 f8             	mov    %edx,-0x8(%ebp)
44fdb8:	89 45 fc             	mov    %eax,-0x4(%ebp)
44fdbb:	8b 45 fc             	mov    -0x4(%ebp),%eax
44fdbe:	80 b8 65 01 00 00 00 	cmpb   $0x0,0x165(%eax)
44fdc5:	75 10                	jne    0x44fdd7
44fdc7:	8b 45 fc             	mov    -0x4(%ebp),%eax
44fdca:	83 b8 6c 01 00 00 00 	cmpl   $0x0,0x16c(%eax)
44fdd1:	0f 86 42 02 00 00    	jbe    0x450019
44fdd7:	8b 45 fc             	mov    -0x4(%ebp),%eax
44fdda:	e8 75 f1 ff ff       	call   0x44ef54
44fddf:	50                   	push   %eax
44fde0:	e8 5b 7d fb ff       	call   0x407b40
44fde5:	89 45 f4             	mov    %eax,-0xc(%ebp)
44fde8:	33 d2                	xor    %edx,%edx
44fdea:	55                   	push   %ebp
44fdeb:	68 12 00 45 00       	push   $0x450012
44fdf0:	64 ff 32             	push   %fs:(%edx)
44fdf3:	64 89 22             	mov    %esp,%fs:(%edx)
44fdf6:	8d 45 e4             	lea    -0x1c(%ebp),%eax
44fdf9:	50                   	push   %eax
44fdfa:	8b 45 fc             	mov    -0x4(%ebp),%eax
44fdfd:	e8 52 f1 ff ff       	call   0x44ef54
44fe02:	50                   	push   %eax
44fe03:	e8 e0 7b fb ff       	call   0x4079e8
44fe08:	8d 45 d4             	lea    -0x2c(%ebp),%eax
44fe0b:	50                   	push   %eax
44fe0c:	8b 45 fc             	mov    -0x4(%ebp),%eax
44fe0f:	e8 40 f1 ff ff       	call   0x44ef54
44fe14:	50                   	push   %eax
44fe15:	e8 3e 7d fb ff       	call   0x407b58
44fe1a:	6a 02                	push   $0x2
44fe1c:	8d 45 d4             	lea    -0x2c(%ebp),%eax
44fe1f:	50                   	push   %eax
44fe20:	8b 45 fc             	mov    -0x4(%ebp),%eax
44fe23:	e8 2c f1 ff ff       	call   0x44ef54
44fe28:	50                   	push   %eax
44fe29:	6a 00                	push   $0x0
44fe2b:	e8 20 7e fb ff       	call   0x407c50
44fe30:	8b 45 d8             	mov    -0x28(%ebp),%eax
44fe33:	f7 d8                	neg    %eax
44fe35:	50                   	push   %eax
44fe36:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44fe39:	f7 d8                	neg    %eax
44fe3b:	50                   	push   %eax
44fe3c:	8d 45 e4             	lea    -0x1c(%ebp),%eax
44fe3f:	50                   	push   %eax
44fe40:	e8 33 7e fb ff       	call   0x407c78
44fe45:	8b 45 f0             	mov    -0x10(%ebp),%eax
44fe48:	50                   	push   %eax
44fe49:	8b 45 ec             	mov    -0x14(%ebp),%eax
44fe4c:	50                   	push   %eax
44fe4d:	8b 45 e8             	mov    -0x18(%ebp),%eax
44fe50:	50                   	push   %eax
44fe51:	8b 45 e4             	mov    -0x1c(%ebp),%eax
44fe54:	50                   	push   %eax
44fe55:	8b 45 f4             	mov    -0xc(%ebp),%eax
44fe58:	50                   	push   %eax
44fe59:	e8 da 76 fb ff       	call   0x407538
44fe5e:	8d 75 d4             	lea    -0x2c(%ebp),%esi
44fe61:	8d 7d c4             	lea    -0x3c(%ebp),%edi
44fe64:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44fe65:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44fe66:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44fe67:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44fe68:	8b 45 fc             	mov    -0x4(%ebp),%eax
44fe6b:	8b 80 6c 01 00 00    	mov    0x16c(%eax),%eax
44fe71:	50                   	push   %eax
44fe72:	50                   	push   %eax
44fe73:	8d 45 e4             	lea    -0x1c(%ebp),%eax
44fe76:	50                   	push   %eax
44fe77:	e8 0c 7d fb ff       	call   0x407b88
44fe7c:	8d 75 e4             	lea    -0x1c(%ebp),%esi
44fe7f:	8d 7d d4             	lea    -0x2c(%ebp),%edi
44fe82:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44fe83:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44fe84:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44fe85:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44fe86:	8b 45 fc             	mov    -0x4(%ebp),%eax
44fe89:	80 b8 65 01 00 00 00 	cmpb   $0x0,0x165(%eax)
44fe90:	0f 84 08 01 00 00    	je     0x44ff9e
44fe96:	33 db                	xor    %ebx,%ebx
44fe98:	8b 45 fc             	mov    -0x4(%ebp),%eax
44fe9b:	80 b8 63 01 00 00 00 	cmpb   $0x0,0x163(%eax)
44fea2:	74 09                	je     0x44fead
44fea4:	8b 45 fc             	mov    -0x4(%ebp),%eax
44fea7:	03 98 68 01 00 00    	add    0x168(%eax),%ebx
44fead:	8b 45 fc             	mov    -0x4(%ebp),%eax
44feb0:	80 b8 64 01 00 00 00 	cmpb   $0x0,0x164(%eax)
44feb7:	74 09                	je     0x44fec2
44feb9:	8b 45 fc             	mov    -0x4(%ebp),%eax
44febc:	03 98 68 01 00 00    	add    0x168(%eax),%ebx
44fec2:	6a f0                	push   $0xfffffff0
44fec4:	8b 45 fc             	mov    -0x4(%ebp),%eax
44fec7:	e8 88 f0 ff ff       	call   0x44ef54
44fecc:	50                   	push   %eax
44fecd:	e8 76 7c fb ff       	call   0x407b48
44fed2:	8b f0                	mov    %eax,%esi
44fed4:	8b 45 fc             	mov    -0x4(%ebp),%eax
44fed7:	f6 80 62 01 00 00 01 	testb  $0x1,0x162(%eax)
44fede:	74 03                	je     0x44fee3
44fee0:	29 5d d4             	sub    %ebx,-0x2c(%ebp)
44fee3:	8b 45 fc             	mov    -0x4(%ebp),%eax
44fee6:	f6 80 62 01 00 00 02 	testb  $0x2,0x162(%eax)
44feed:	74 03                	je     0x44fef2
44feef:	29 5d d8             	sub    %ebx,-0x28(%ebp)
44fef2:	8b 45 fc             	mov    -0x4(%ebp),%eax
44fef5:	f6 80 62 01 00 00 04 	testb  $0x4,0x162(%eax)
44fefc:	74 03                	je     0x44ff01
44fefe:	01 5d dc             	add    %ebx,-0x24(%ebp)
44ff01:	f7 c6 00 00 20 00    	test   $0x200000,%esi
44ff07:	74 0e                	je     0x44ff17
44ff09:	6a 14                	push   $0x14
44ff0b:	a1 04 6e 6a 00       	mov    0x6a6e04,%eax
44ff10:	8b 00                	mov    (%eax),%eax
44ff12:	ff d0                	call   *%eax
44ff14:	01 45 dc             	add    %eax,-0x24(%ebp)
44ff17:	8b 45 fc             	mov    -0x4(%ebp),%eax
44ff1a:	f6 80 62 01 00 00 08 	testb  $0x8,0x162(%eax)
44ff21:	74 03                	je     0x44ff26
44ff23:	01 5d e0             	add    %ebx,-0x20(%ebp)
44ff26:	f7 c6 00 00 10 00    	test   $0x100000,%esi
44ff2c:	74 0e                	je     0x44ff3c
44ff2e:	6a 15                	push   $0x15
44ff30:	a1 04 6e 6a 00       	mov    0x6a6e04,%eax
44ff35:	8b 00                	mov    (%eax),%eax
44ff37:	ff d0                	call   *%eax
44ff39:	01 45 e0             	add    %eax,-0x20(%ebp)
44ff3c:	8b 45 fc             	mov    -0x4(%ebp),%eax
44ff3f:	0f b6 80 62 01 00 00 	movzbl 0x162(%eax),%eax
44ff46:	8b 55 fc             	mov    -0x4(%ebp),%edx
44ff49:	0f b6 92 65 01 00 00 	movzbl 0x165(%edx),%edx
44ff50:	0b 04 95 60 ac 68 00 	or     0x68ac60(,%edx,4),%eax
44ff57:	8b 55 fc             	mov    -0x4(%ebp),%edx
44ff5a:	0f b6 92 a5 01 00 00 	movzbl 0x1a5(%edx),%edx
44ff61:	0b 04 95 70 ac 68 00 	or     0x68ac70(,%edx,4),%eax
44ff68:	0d 00 20 00 00       	or     $0x2000,%eax
44ff6d:	50                   	push   %eax
44ff6e:	8b 45 fc             	mov    -0x4(%ebp),%eax
44ff71:	0f b6 80 63 01 00 00 	movzbl 0x163(%eax),%eax
44ff78:	8b 04 85 40 ac 68 00 	mov    0x68ac40(,%eax,4),%eax
44ff7f:	8b 55 fc             	mov    -0x4(%ebp),%edx
44ff82:	0f b6 92 64 01 00 00 	movzbl 0x164(%edx),%edx
44ff89:	0b 04 95 50 ac 68 00 	or     0x68ac50(,%edx,4),%eax
44ff90:	50                   	push   %eax
44ff91:	8d 45 d4             	lea    -0x2c(%ebp),%eax
44ff94:	50                   	push   %eax
44ff95:	8b 45 f4             	mov    -0xc(%ebp),%eax
44ff98:	50                   	push   %eax
44ff99:	e8 6a 79 fb ff       	call   0x407908
44ff9e:	8b 45 e0             	mov    -0x20(%ebp),%eax
44ffa1:	50                   	push   %eax
44ffa2:	8b 45 dc             	mov    -0x24(%ebp),%eax
44ffa5:	50                   	push   %eax
44ffa6:	8b 45 d8             	mov    -0x28(%ebp),%eax
44ffa9:	50                   	push   %eax
44ffaa:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44ffad:	50                   	push   %eax
44ffae:	8b 45 f4             	mov    -0xc(%ebp),%eax
44ffb1:	50                   	push   %eax
44ffb2:	e8 a1 76 fb ff       	call   0x407658
44ffb7:	8d 75 c4             	lea    -0x3c(%ebp),%esi
44ffba:	8d 7d d4             	lea    -0x2c(%ebp),%edi
44ffbd:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44ffbe:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44ffbf:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44ffc0:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44ffc1:	8b 45 d8             	mov    -0x28(%ebp),%eax
44ffc4:	f7 d8                	neg    %eax
44ffc6:	50                   	push   %eax
44ffc7:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44ffca:	f7 d8                	neg    %eax
44ffcc:	50                   	push   %eax
44ffcd:	8d 45 d4             	lea    -0x2c(%ebp),%eax
44ffd0:	50                   	push   %eax
44ffd1:	e8 a2 7c fb ff       	call   0x407c78
44ffd6:	8b 45 fc             	mov    -0x4(%ebp),%eax
44ffd9:	8b 80 70 01 00 00    	mov    0x170(%eax),%eax
44ffdf:	e8 d4 82 fd ff       	call   0x4282b8
44ffe4:	50                   	push   %eax
44ffe5:	8d 45 d4             	lea    -0x2c(%ebp),%eax
44ffe8:	50                   	push   %eax
44ffe9:	8b 45 f4             	mov    -0xc(%ebp),%eax
44ffec:	50                   	push   %eax
44ffed:	e8 a6 79 fb ff       	call   0x407998
44fff2:	33 c0                	xor    %eax,%eax
44fff4:	5a                   	pop    %edx
44fff5:	59                   	pop    %ecx
44fff6:	59                   	pop    %ecx
44fff7:	64 89 10             	mov    %edx,%fs:(%eax)
44fffa:	68 19 00 45 00       	push   $0x450019
44ffff:	8b 45 f4             	mov    -0xc(%ebp),%eax
450002:	50                   	push   %eax
450003:	8b 45 fc             	mov    -0x4(%ebp),%eax
450006:	e8 49 ef ff ff       	call   0x44ef54
45000b:	50                   	push   %eax
45000c:	e8 c7 7c fb ff       	call   0x407cd8
450011:	c3                   	ret
450012:	e9 f5 41 fb ff       	jmp    0x40420c
450017:	eb e6                	jmp    0x44ffff
450019:	8b 55 f8             	mov    -0x8(%ebp),%edx
45001c:	8b 45 fc             	mov    -0x4(%ebp),%eax
45001f:	8b 08                	mov    (%eax),%ecx
450021:	ff 51 f0             	call   *-0x10(%ecx)
450024:	5f                   	pop    %edi
450025:	5e                   	pop    %esi
450026:	5b                   	pop    %ebx
450027:	8b e5                	mov    %ebp,%esp
450029:	5d                   	pop    %ebp
45002a:	c3                   	ret
45002b:	90                   	nop
45002c:	53                   	push   %ebx
45002d:	56                   	push   %esi
45002e:	57                   	push   %edi
45002f:	83 c4 f0             	add    $0xfffffff0,%esp
450032:	8b da                	mov    %edx,%ebx
450034:	8b f0                	mov    %eax,%esi
450036:	83 7b 0c 00          	cmpl   $0x0,0xc(%ebx)
45003a:	75 54                	jne    0x450090
45003c:	6a 00                	push   $0x0