43f994:	89 85 f0 ef ff ff    	mov    %eax,-0x1010(%ebp)
43f99a:	89 85 f8 ef ff ff    	mov    %eax,-0x1008(%ebp)
43f9a0:	89 85 f4 ef ff ff    	mov    %eax,-0x100c(%ebp)
43f9a6:	8d 85 fc ef ff ff    	lea    -0x1004(%ebp),%eax
43f9ac:	50                   	push   %eax
43f9ad:	e8 be fc fe ff       	call   0x42f670
43f9b2:	83 c4 0c             	add    $0xc,%esp
43f9b5:	8d 85 f0 ef ff ff    	lea    -0x1010(%ebp),%eax
43f9bb:	68 40 00 00 f0       	push   $0xf0000040
43f9c0:	ff 75 0c             	push   0xc(%ebp)
43f9c3:	56                   	push   %esi
43f9c4:	56                   	push   %esi
43f9c5:	50                   	push   %eax
43f9c6:	ff 15 a0 b0 44 00    	call   *0x44b0a0
43f9cc:	85 c0                	test   %eax,%eax
43f9ce:	75 29                	jne    0x43f9f9
43f9d0:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43f9d6:	0f b7 f0             	movzwl %ax,%esi
43f9d9:	81 ce 00 00 07 80    	or     $0x80070000,%esi
43f9df:	85 c0                	test   %eax,%eax
43f9e1:	0f 4e f0             	cmovle %eax,%esi
43f9e4:	b8 05 40 00 80       	mov    $0x80004005,%eax
43f9e9:	85 f6                	test   %esi,%esi
43f9eb:	0f 49 f0             	cmovns %eax,%esi
43f9ee:	56                   	push   %esi
43f9ef:	68 d3 00 00 00       	push   $0xd3
43f9f4:	e9 b7 00 00 00       	jmp    0x43fab0
43f9f9:	8d 85 f8 ef ff ff    	lea    -0x1008(%ebp),%eax
43f9ff:	50                   	push   %eax
43fa00:	6a 00                	push   $0x0
43fa02:	6a 00                	push   $0x0
43fa04:	ff 75 10             	push   0x10(%ebp)
43fa07:	ff b5 f0 ef ff ff    	push   -0x1010(%ebp)
43fa0d:	ff 15 94 b0 44 00    	call   *0x44b094
43fa13:	85 c0                	test   %eax,%eax
43fa15:	75 55                	jne    0x43fa6c
43fa17:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43fa1d:	0f b7 f0             	movzwl %ax,%esi
43fa20:	81 ce 00 00 07 80    	or     $0x80070000,%esi
43fa26:	85 c0                	test   %eax,%eax
43fa28:	0f 4e f0             	cmovle %eax,%esi
43fa2b:	b8 05 40 00 80       	mov    $0x80004005,%eax
43fa30:	85 f6                	test   %esi,%esi
43fa32:	0f 49 f0             	cmovns %eax,%esi
43fa35:	56                   	push   %esi
43fa36:	68 d9 00 00 00       	push   $0xd9
43fa3b:	eb 73                	jmp    0x43fab0
43fa3d:	6a 00                	push   $0x0
43fa3f:	39 b5 f4 ef ff ff    	cmp    %esi,-0x100c(%ebp)
43fa45:	0f 84 d6 00 00 00    	je     0x43fb21
43fa4b:	ff b5 f4 ef ff ff    	push   -0x100c(%ebp)
43fa51:	8d 85 fc ef ff ff    	lea    -0x1004(%ebp),%eax
43fa57:	50                   	push   %eax
43fa58:	ff b5 f8 ef ff ff    	push   -0x1008(%ebp)
43fa5e:	ff 15 90 b0 44 00    	call   *0x44b090
43fa64:	85 c0                	test   %eax,%eax
43fa66:	0f 84 8f 00 00 00    	je     0x43fafb
43fa6c:	6a 00                	push   $0x0
43fa6e:	8d 85 f4 ef ff ff    	lea    -0x100c(%ebp),%eax
43fa74:	50                   	push   %eax
43fa75:	68 00 10 00 00       	push   $0x1000
43fa7a:	8d 85 fc ef ff ff    	lea    -0x1004(%ebp),%eax
43fa80:	50                   	push   %eax
43fa81:	57                   	push   %edi
43fa82:	ff 15 ec b1 44 00    	call   *0x44b1ec
43fa88:	85 c0                	test   %eax,%eax
43fa8a:	75 b1                	jne    0x43fa3d
43fa8c:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43fa92:	0f b7 f0             	movzwl %ax,%esi
43fa95:	81 ce 00 00 07 80    	or     $0x80070000,%esi
43fa9b:	85 c0                	test   %eax,%eax
43fa9d:	0f 4e f0             	cmovle %eax,%esi
43faa0:	b8 05 40 00 80       	mov    $0x80004005,%eax
43faa5:	85 f6                	test   %esi,%esi
43faa7:	0f 49 f0             	cmovns %eax,%esi
43faaa:	56                   	push   %esi
43faab:	68 e1 00 00 00       	push   $0xe1
43fab0:	68 10 62 46 00       	push   $0x466210
43fab5:	e8 19 3d fc ff       	call   0x4037d3
43faba:	83 bd f8 ef ff ff 00 	cmpl   $0x0,-0x1008(%ebp)
43fac1:	74 0c                	je     0x43facf
43fac3:	ff b5 f8 ef ff ff    	push   -0x1008(%ebp)
43fac9:	ff 15 8c b0 44 00    	call   *0x44b08c
43facf:	83 bd f0 ef ff ff 00 	cmpl   $0x0,-0x1010(%ebp)
43fad6:	74 0e                	je     0x43fae6
43fad8:	6a 00                	push   $0x0
43fada:	ff b5 f0 ef ff ff    	push   -0x1010(%ebp)
43fae0:	ff 15 9c b0 44 00    	call   *0x44b09c
43fae6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43fae9:	8b c6                	mov    %esi,%eax
43faeb:	5f                   	pop    %edi
43faec:	5e                   	pop    %esi
43faed:	33 cd                	xor    %ebp,%ecx
43faef:	5b                   	pop    %ebx
43faf0:	e8 41 e3 fe ff       	call   0x42de36
43faf5:	8b e5                	mov    %ebp,%esp
43faf7:	5d                   	pop    %ebp
43faf8:	c2 18 00             	ret    $0x18
43fafb:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43fb01:	0f b7 f0             	movzwl %ax,%esi
43fb04:	81 ce 00 00 07 80    	or     $0x80070000,%esi
43fb0a:	85 c0                	test   %eax,%eax
43fb0c:	0f 4e f0             	cmovle %eax,%esi
43fb0f:	b8 05 40 00 80       	mov    $0x80004005,%eax
43fb14:	85 f6                	test   %esi,%esi
43fb16:	0f 49 f0             	cmovns %eax,%esi
43fb19:	56                   	push   %esi
43fb1a:	68 ec 00 00 00       	push   $0xec
43fb1f:	eb 8f                	jmp    0x43fab0
43fb21:	8d 45 18             	lea    0x18(%ebp),%eax
43fb24:	50                   	push   %eax
43fb25:	ff b5 ec ef ff ff    	push   -0x1014(%ebp)
43fb2b:	6a 02                	push   $0x2
43fb2d:	ff b5 f8 ef ff ff    	push   -0x1008(%ebp)
43fb33:	ff 15 98 b0 44 00    	call   *0x44b098
43fb39:	85 c0                	test   %eax,%eax
43fb3b:	75 29                	jne    0x43fb66
43fb3d:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43fb43:	0f b7 f0             	movzwl %ax,%esi
43fb46:	81 ce 00 00 07 80    	or     $0x80070000,%esi
43fb4c:	85 c0                	test   %eax,%eax
43fb4e:	0f 4e f0             	cmovle %eax,%esi
43fb51:	b8 05 40 00 80       	mov    $0x80004005,%eax
43fb56:	85 f6                	test   %esi,%esi
43fb58:	0f 49 f0             	cmovns %eax,%esi
43fb5b:	56                   	push   %esi
43fb5c:	68 f3 00 00 00       	push   $0xf3
43fb61:	e9 4a ff ff ff       	jmp    0x43fab0
43fb66:	85 db                	test   %ebx,%ebx
43fb68:	0f 84 4c ff ff ff    	je     0x43faba
43fb6e:	6a 01                	push   $0x1
43fb70:	53                   	push   %ebx
43fb71:	6a 00                	push   $0x0
43fb73:	6a 00                	push   $0x0
43fb75:	57                   	push   %edi
43fb76:	ff 15 f0 b1 44 00    	call   *0x44b1f0
43fb7c:	85 c0                	test   %eax,%eax
43fb7e:	0f 85 36 ff ff ff    	jne    0x43faba
43fb84:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43fb8a:	0f b7 f0             	movzwl %ax,%esi
43fb8d:	81 ce 00 00 07 80    	or     $0x80070000,%esi
43fb93:	85 c0                	test   %eax,%eax
43fb95:	0f 4e f0             	cmovle %eax,%esi
43fb98:	b8 05 40 00 80       	mov    $0x80004005,%eax
43fb9d:	85 f6                	test   %esi,%esi
43fb9f:	0f 49 f0             	cmovns %eax,%esi
43fba2:	56                   	push   %esi
43fba3:	68 fa 00 00 00       	push   $0xfa
43fba8:	e9 03 ff ff ff       	jmp    0x43fab0
43fbad:	56                   	push   %esi
43fbae:	57                   	push   %edi
43fbaf:	68 e8 b5 46 00       	push   $0x46b5e8
43fbb4:	68 a0 61 46 00       	push   $0x4661a0
43fbb9:	e8 18 3c fc ff       	call   0x4037d6
43fbbe:	8b 3d dc b0 44 00    	mov    0x44b0dc,%edi
43fbc4:	8b f0                	mov    %eax,%esi
43fbc6:	85 f6                	test   %esi,%esi
43fbc8:	78 26                	js     0x43fbf0
43fbca:	68 bc 61 46 00       	push   $0x4661bc
43fbcf:	ff 35 e8 b5 46 00    	push   0x46b5e8
43fbd5:	ff d7                	call   *%edi
43fbd7:	68 d0 61 46 00       	push   $0x4661d0
43fbdc:	ff 35 e8 b5 46 00    	push   0x46b5e8
43fbe2:	a3 f0 b5 46 00       	mov    %eax,0x46b5f0
43fbe7:	ff d7                	call   *%edi
43fbe9:	a3 f4 b5 46 00       	mov    %eax,0x46b5f4
43fbee:	eb 05                	jmp    0x43fbf5
43fbf0:	a1 f4 b5 46 00       	mov    0x46b5f4,%eax
43fbf5:	83 3d f0 b5 46 00 00 	cmpl   $0x0,0x46b5f0
43fbfc:	74 08                	je     0x43fc06
43fbfe:	85 c0                	test   %eax,%eax
43fc00:	0f 85 a7 00 00 00    	jne    0x43fcad
43fc06:	68 ec b5 46 00       	push   $0x46b5ec
43fc0b:	68 e4 61 46 00       	push   $0x4661e4
43fc10:	e8 c1 3b fc ff       	call   0x4037d6
43fc15:	8b f0                	mov    %eax,%esi
43fc17:	85 f6                	test   %esi,%esi
43fc19:	0f 88 98 00 00 00    	js     0x43fcb7
43fc1f:	68 fc 61 46 00       	push   $0x4661fc
43fc24:	ff 35 ec b5 46 00    	push   0x46b5ec
43fc2a:	ff d7                	call   *%edi
43fc2c:	83 3d f0 b5 46 00 00 	cmpl   $0x0,0x46b5f0
43fc33:	a3 f8 b5 46 00       	mov    %eax,0x46b5f8
43fc38:	75 31                	jne    0x43fc6b
43fc3a:	85 c0                	test   %eax,%eax
43fc3c:	75 2d                	jne    0x43fc6b
43fc3e:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43fc44:	0f b7 f0             	movzwl %ax,%esi
43fc47:	81 ce 00 00 07 80    	or     $0x80070000,%esi
43fc4d:	85 c0                	test   %eax,%eax
43fc4f:	0f 4e f0             	cmovle %eax,%esi
43fc52:	b8 05 40 00 80       	mov    $0x80004005,%eax
43fc57:	85 f6                	test   %esi,%esi
43fc59:	0f 49 f0             	cmovns %eax,%esi
43fc5c:	56                   	push   %esi
43fc5d:	6a 28                	push   $0x28
43fc5f:	68 10 62 46 00       	push   $0x466210
43fc64:	e8 6a 3b fc ff       	call   0x4037d3
43fc69:	eb 4c                	jmp    0x43fcb7
43fc6b:	68 20 62 46 00       	push   $0x466220
43fc70:	ff 35 ec b5 46 00    	push   0x46b5ec
43fc76:	ff d7                	call   *%edi
43fc78:	83 3d f4 b5 46 00 00 	cmpl   $0x0,0x46b5f4
43fc7f:	a3 fc b5 46 00       	mov    %eax,0x46b5fc
43fc84:	75 27                	jne    0x43fcad
43fc86:	85 c0                	test   %eax,%eax
43fc88:	75 23                	jne    0x43fcad
43fc8a:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43fc90:	0f b7 f0             	movzwl %ax,%esi
43fc93:	81 ce 00 00 07 80    	or     $0x80070000,%esi
43fc99:	85 c0                	test   %eax,%eax
43fc9b:	0f 4e f0             	cmovle %eax,%esi
43fc9e:	b8 05 40 00 80       	mov    $0x80004005,%eax
43fca3:	85 f6                	test   %esi,%esi
43fca5:	0f 49 f0             	cmovns %eax,%esi
43fca8:	56                   	push   %esi
43fca9:	6a 2d                	push   $0x2d
43fcab:	eb b2                	jmp    0x43fc5f
43fcad:	c7 05 00 b6 46 00 01 	movl   $0x1,0x46b600
43fcb4:	00 00 00
43fcb7:	5f                   	pop    %edi
43fcb8:	8b c6                	mov    %esi,%eax
43fcba:	5e                   	pop    %esi
43fcbb:	c3                   	ret
43fcbc:	a1 e8 b5 46 00       	mov    0x46b5e8,%eax
43fcc1:	57                   	push   %edi
43fcc2:	33 ff                	xor    %edi,%edi
43fcc4:	85 c0                	test   %eax,%eax
43fcc6:	74 19                	je     0x43fce1
43fcc8:	50                   	push   %eax
43fcc9:	ff 15 b0 b1 44 00    	call   *0x44b1b0
43fccf:	89 3d e8 b5 46 00    	mov    %edi,0x46b5e8
43fcd5:	89 3d f0 b5 46 00    	mov    %edi,0x46b5f0
43fcdb:	89 3d f4 b5 46 00    	mov    %edi,0x46b5f4
43fce1:	a1 ec b5 46 00       	mov    0x46b5ec,%eax
43fce6:	85 c0                	test   %eax,%eax
43fce8:	74 19                	je     0x43fd03
43fcea:	50                   	push   %eax
43fceb:	ff 15 b0 b1 44 00    	call   *0x44b1b0
43fcf1:	89 3d ec b5 46 00    	mov    %edi,0x46b5ec
43fcf7:	89 3d f8 b5 46 00    	mov    %edi,0x46b5f8
43fcfd:	89 3d fc b5 46 00    	mov    %edi,0x46b5fc
43fd03:	89 3d 00 b6 46 00    	mov    %edi,0x46b600
43fd09:	5f                   	pop    %edi
43fd0a:	c3                   	ret
43fd0b:	55                   	push   %ebp
43fd0c:	8b ec                	mov    %esp,%ebp
43fd0e:	6a 01                	push   $0x1
43fd10:	8d 45 0c             	lea    0xc(%ebp),%eax
43fd13:	50                   	push   %eax
43fd14:	ff 75 08             	push   0x8(%ebp)
43fd17:	6a 02                	push   $0x2
43fd19:	e8 2a 02 00 00       	call   0x43ff48
43fd1e:	5d                   	pop    %ebp
43fd1f:	c3                   	ret
43fd20:	55                   	push   %ebp
43fd21:	8b ec                	mov    %esp,%ebp
43fd23:	51                   	push   %ecx
43fd24:	56                   	push   %esi
43fd25:	8d 45 14             	lea    0x14(%ebp),%eax
43fd28:	33 f6                	xor    %esi,%esi
43fd2a:	50                   	push   %eax
43fd2b:	56                   	push   %esi
43fd2c:	8d 45 fc             	lea    -0x4(%ebp),%eax
43fd2f:	89 75 fc             	mov    %esi,-0x4(%ebp)
43fd32:	50                   	push   %eax
43fd33:	56                   	push   %esi
43fd34:	ff 75 10             	push   0x10(%ebp)
43fd37:	ff 75 0c             	push   0xc(%ebp)
43fd3a:	68 00 09 00 00       	push   $0x900
43fd3f:	ff 15 f0 b0 44 00    	call   *0x44b0f0
43fd45:	8b c8                	mov    %eax,%ecx
43fd47:	85 c9                	test   %ecx,%ecx
43fd49:	75 2a                	jne    0x43fd75
43fd4b:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43fd51:	0f b7 f0             	movzwl %ax,%esi
43fd54:	81 ce 00 00 07 80    	or     $0x80070000,%esi
43fd5a:	85 c0                	test   %eax,%eax
43fd5c:	0f 4e f0             	cmovle %eax,%esi
43fd5f:	85 f6                	test   %esi,%esi
43fd61:	79 35                	jns    0x43fd98
43fd63:	56                   	push   %esi
43fd64:	68 33 03 00 00       	push   $0x333
43fd69:	68 6c 62 46 00       	push   $0x46626c
43fd6e:	e8 60 3a fc ff       	call   0x4037d3
43fd73:	eb 35                	jmp    0x43fdaa
43fd75:	83 f9 02             	cmp    $0x2,%ecx
43fd78:	72 1e                	jb     0x43fd98
43fd7a:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fd7d:	6a 0d                	push   $0xd
43fd7f:	5a                   	pop    %edx
43fd80:	66 3b 54 48 fc       	cmp    -0x4(%eax,%ecx,2),%dx
43fd85:	75 14                	jne    0x43fd9b
43fd87:	6a 0a                	push   $0xa
43fd89:	5a                   	pop    %edx
43fd8a:	66 3b 54 48 fe       	cmp    -0x2(%eax,%ecx,2),%dx
43fd8f:	75 0a                	jne    0x43fd9b
43fd91:	33 d2                	xor    %edx,%edx
43fd93:	66 89 54 48 fc       	mov    %dx,-0x4(%eax,%ecx,2)
43fd98:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fd9b:	ff 75 18             	push   0x18(%ebp)
43fd9e:	50                   	push   %eax
43fd9f:	ff 75 10             	push   0x10(%ebp)
43fda2:	ff 75 08             	push   0x8(%ebp)
43fda5:	e8 18 00 00 00       	call   0x43fdc2
43fdaa:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
43fdae:	74 09                	je     0x43fdb9
43fdb0:	ff 75 fc             	push   -0x4(%ebp)
43fdb3:	ff 15 e0 b0 44 00    	call   *0x44b0e0
43fdb9:	8b c6                	mov    %esi,%eax
43fdbb:	5e                   	pop    %esi
43fdbc:	8b e5                	mov    %ebp,%esp
43fdbe:	5d                   	pop    %ebp
43fdbf:	c2 14 00             	ret    $0x14
43fdc2:	55                   	push   %ebp
43fdc3:	8b ec                	mov    %esp,%ebp
43fdc5:	83 ec 24             	sub    $0x24,%esp
43fdc8:	a1 08 a0 46 00       	mov    0x46a008,%eax
43fdcd:	33 c5                	xor    %ebp,%eax
43fdcf:	89 45 fc             	mov    %eax,-0x4(%ebp)
43fdd2:	53                   	push   %ebx
43fdd3:	8b 5d 10             	mov    0x10(%ebp),%ebx
43fdd6:	56                   	push   %esi
43fdd7:	33 f6                	xor    %esi,%esi
43fdd9:	21 75 e8             	and    %esi,-0x18(%ebp)
43fddc:	21 75 e4             	and    %esi,-0x1c(%ebp)
43fddf:	39 35 34 b6 46 00    	cmp    %esi,0x46b634
43fde5:	0f 85 49 01 00 00    	jne    0x43ff34
43fdeb:	68 0c b6 46 00       	push   $0x46b60c
43fdf0:	ff 15 b4 b1 44 00    	call   *0x44b1b4
43fdf6:	39 75 14             	cmp    %esi,0x14(%ebp)
43fdf9:	0f 84 cf 00 00 00    	je     0x43fece
43fdff:	57                   	push   %edi
43fe00:	ff 15 2c b1 44 00    	call   *0x44b12c
43fe06:	89 45 dc             	mov    %eax,-0x24(%ebp)
43fe09:	ff 15 84 b1 44 00    	call   *0x44b184
43fe0f:	89 45 e0             	mov    %eax,-0x20(%ebp)
43fe12:	8d 7d ec             	lea    -0x14(%ebp),%edi
43fe15:	33 c0                	xor    %eax,%eax
43fe17:	ab                   	stos   %eax,%es:(%edi)
43fe18:	ab                   	stos   %eax,%es:(%edi)
43fe19:	ab                   	stos   %eax,%es:(%edi)
43fe1a:	ab                   	stos   %eax,%es:(%edi)
43fe1b:	8d 45 ec             	lea    -0x14(%ebp),%eax
43fe1e:	50                   	push   %eax
43fe1f:	ff 15 0c b1 44 00    	call   *0x44b10c
43fe25:	8b 45 0c             	mov    0xc(%ebp),%eax
43fe28:	8b f8                	mov    %eax,%edi
43fe2a:	25 00 00 00 f0       	and    $0xf0000000,%eax
43fe2f:	81 e7 ff ff ff 0f    	and    $0xfffffff,%edi