41ac82:	ff 75 08             	push   0x8(%ebp)
41ac85:	ff 73 1c             	push   0x1c(%ebx)
41ac88:	e8 72 53 00 00       	call   0x41ffff
41ac8d:	8b f8                	mov    %eax,%edi
41ac8f:	85 ff                	test   %edi,%edi
41ac91:	74 4d                	je     0x41ace0
41ac93:	56                   	push   %esi
41ac94:	57                   	push   %edi
41ac95:	ff 15 d8 98 43 00    	call   *0x4398d8
41ac9b:	8b 75 10             	mov    0x10(%ebp),%esi
41ac9e:	0f b7 c0             	movzwl %ax,%eax
41aca1:	85 f6                	test   %esi,%esi
41aca3:	89 45 0c             	mov    %eax,0xc(%ebp)
41aca6:	74 32                	je     0x41acda
41aca8:	83 3e 2c             	cmpl   $0x2c,(%esi)
41acab:	72 2d                	jb     0x41acda
41acad:	8b 43 1c             	mov    0x1c(%ebx),%eax
41acb0:	83 4e 04 01          	orl    $0x1,0x4(%esi)
41acb4:	83 4e 24 ff          	orl    $0xffffffff,0x24(%esi)
41acb8:	6a 00                	push   $0x0
41acba:	6a 00                	push   $0x0
41acbc:	68 87 00 00 00       	push   $0x87
41acc1:	57                   	push   %edi
41acc2:	89 46 08             	mov    %eax,0x8(%esi)
41acc5:	89 7e 0c             	mov    %edi,0xc(%esi)
41acc8:	ff 15 88 99 43 00    	call   *0x439988
41acce:	f6 c4 20             	test   $0x20,%ah
41acd1:	75 07                	jne    0x41acda
41acd3:	81 4e 04 02 00 00 80 	orl    $0x80000002,0x4(%esi)
41acda:	8b 45 0c             	mov    0xc(%ebp),%eax
41acdd:	5e                   	pop    %esi
41acde:	eb 03                	jmp    0x41ace3
41ace0:	83 c8 ff             	or     $0xffffffff,%eax
41ace3:	5f                   	pop    %edi
41ace4:	5b                   	pop    %ebx
41ace5:	5d                   	pop    %ebp
41ace6:	c2 0c 00             	ret    $0xc
41ace9:	56                   	push   %esi
41acea:	8b 74 24 0c          	mov    0xc(%esp),%esi
41acee:	57                   	push   %edi
41acef:	8b f9                	mov    %ecx,%edi
41acf1:	83 3e 01             	cmpl   $0x1,(%esi)
41acf4:	75 16                	jne    0x41ad0c
41acf6:	ff 76 14             	push   0x14(%esi)
41acf9:	e8 58 1f 00 00       	call   0x41cc56
41acfe:	85 c0                	test   %eax,%eax
41ad00:	74 18                	je     0x41ad1a
41ad02:	8b 10                	mov    (%eax),%edx
41ad04:	56                   	push   %esi
41ad05:	8b c8                	mov    %eax,%ecx
41ad07:	ff 52 14             	call   *0x14(%edx)
41ad0a:	eb 15                	jmp    0x41ad21
41ad0c:	6a 00                	push   $0x0
41ad0e:	ff 76 14             	push   0x14(%esi)
41ad11:	e8 12 12 00 00       	call   0x41bf28
41ad16:	85 c0                	test   %eax,%eax
41ad18:	75 07                	jne    0x41ad21
41ad1a:	8b cf                	mov    %edi,%ecx
41ad1c:	e8 f4 f4 ff ff       	call   0x41a215
41ad21:	5f                   	pop    %edi
41ad22:	5e                   	pop    %esi
41ad23:	c2 08 00             	ret    $0x8
41ad26:	55                   	push   %ebp
41ad27:	8b ec                	mov    %esp,%ebp
41ad29:	8d 45 0c             	lea    0xc(%ebp),%eax
41ad2c:	56                   	push   %esi
41ad2d:	50                   	push   %eax
41ad2e:	8b 45 0c             	mov    0xc(%ebp),%eax
41ad31:	8b f1                	mov    %ecx,%esi
41ad33:	ff 70 08             	push   0x8(%eax)
41ad36:	e8 ed 11 00 00       	call   0x41bf28
41ad3b:	85 c0                	test   %eax,%eax
41ad3d:	74 05                	je     0x41ad44
41ad3f:	8b 45 0c             	mov    0xc(%ebp),%eax
41ad42:	eb 07                	jmp    0x41ad4b
41ad44:	8b ce                	mov    %esi,%ecx
41ad46:	e8 ca f4 ff ff       	call   0x41a215
41ad4b:	5e                   	pop    %esi
41ad4c:	5d                   	pop    %ebp
41ad4d:	c2 08 00             	ret    $0x8
41ad50:	8b 44 24 08          	mov    0x8(%esp),%eax
41ad54:	56                   	push   %esi
41ad55:	6a 00                	push   $0x0
41ad57:	8b f1                	mov    %ecx,%esi
41ad59:	ff 70 0c             	push   0xc(%eax)
41ad5c:	e8 c7 11 00 00       	call   0x41bf28
41ad61:	85 c0                	test   %eax,%eax
41ad63:	75 07                	jne    0x41ad6c
41ad65:	8b ce                	mov    %esi,%ecx
41ad67:	e8 a9 f4 ff ff       	call   0x41a215
41ad6c:	5e                   	pop    %esi
41ad6d:	c2 08 00             	ret    $0x8
41ad70:	55                   	push   %ebp
41ad71:	8b ec                	mov    %esp,%ebp
41ad73:	56                   	push   %esi
41ad74:	8b f1                	mov    %ecx,%esi
41ad76:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41ad79:	85 c9                	test   %ecx,%ecx
41ad7b:	74 12                	je     0x41ad8f
41ad7d:	8d 45 0c             	lea    0xc(%ebp),%eax
41ad80:	50                   	push   %eax
41ad81:	e8 75 11 00 00       	call   0x41befb
41ad86:	85 c0                	test   %eax,%eax
41ad88:	74 05                	je     0x41ad8f
41ad8a:	8b 45 0c             	mov    0xc(%ebp),%eax
41ad8d:	eb 07                	jmp    0x41ad96
41ad8f:	8b ce                	mov    %esi,%ecx
41ad91:	e8 7f f4 ff ff       	call   0x41a215
41ad96:	5e                   	pop    %esi
41ad97:	5d                   	pop    %ebp
41ad98:	c2 0c 00             	ret    $0xc
41ad9b:	55                   	push   %ebp
41ad9c:	8b ec                	mov    %esp,%ebp
41ad9e:	56                   	push   %esi
41ad9f:	8b f1                	mov    %ecx,%esi
41ada1:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41ada4:	85 c9                	test   %ecx,%ecx
41ada6:	74 12                	je     0x41adba
41ada8:	8d 45 0c             	lea    0xc(%ebp),%eax
41adab:	50                   	push   %eax
41adac:	e8 4a 11 00 00       	call   0x41befb
41adb1:	85 c0                	test   %eax,%eax
41adb3:	74 05                	je     0x41adba
41adb5:	8b 45 0c             	mov    0xc(%ebp),%eax
41adb8:	eb 07                	jmp    0x41adc1
41adba:	8b ce                	mov    %esi,%ecx
41adbc:	e8 54 f4 ff ff       	call   0x41a215
41adc1:	5e                   	pop    %esi
41adc2:	5d                   	pop    %ebp
41adc3:	c2 0c 00             	ret    $0xc
41adc6:	56                   	push   %esi
41adc7:	8b 74 24 0c          	mov    0xc(%esp),%esi
41adcb:	57                   	push   %edi
41adcc:	8b f9                	mov    %ecx,%edi
41adce:	83 3e 01             	cmpl   $0x1,(%esi)
41add1:	75 42                	jne    0x41ae15
41add3:	68 ce b1 40 00       	push   $0x40b1ce
41add8:	b9 b4 6a 43 00       	mov    $0x436ab4,%ecx
41addd:	e8 ac a2 00 00       	call   0x42508e
41ade2:	8b 4f 1c             	mov    0x1c(%edi),%ecx
41ade5:	39 48 50             	cmp    %ecx,0x50(%eax)
41ade8:	75 05                	jne    0x41adef
41adea:	ff 70 54             	push   0x54(%eax)
41aded:	eb 08                	jmp    0x41adf7
41adef:	51                   	push   %ecx
41adf0:	ff 15 cc 98 43 00    	call   *0x4398cc
41adf6:	50                   	push   %eax
41adf7:	e8 44 1e 00 00       	call   0x41cc40
41adfc:	ff 76 08             	push   0x8(%esi)
41adff:	50                   	push   %eax
41ae00:	e8 3a 00 00 00       	call   0x41ae3f
41ae05:	59                   	pop    %ecx
41ae06:	85 c0                	test   %eax,%eax
41ae08:	59                   	pop    %ecx
41ae09:	74 28                	je     0x41ae33
41ae0b:	8b 10                	mov    (%eax),%edx
41ae0d:	56                   	push   %esi
41ae0e:	8b c8                	mov    %eax,%ecx
41ae10:	ff 52 18             	call   *0x18(%edx)
41ae13:	eb 1e                	jmp    0x41ae33
41ae15:	6a 01                	push   $0x1
41ae17:	ff 76 04             	push   0x4(%esi)
41ae1a:	ff 77 1c             	push   0x1c(%edi)
41ae1d:	e8 c5 0b 00 00       	call   0x41b9e7
41ae22:	85 c0                	test   %eax,%eax
41ae24:	74 0d                	je     0x41ae33
41ae26:	6a 00                	push   $0x0
41ae28:	8b c8                	mov    %eax,%ecx
41ae2a:	e8 cc 10 00 00       	call   0x41befb
41ae2f:	85 c0                	test   %eax,%eax
41ae31:	75 07                	jne    0x41ae3a
41ae33:	8b cf                	mov    %edi,%ecx
41ae35:	e8 db f3 ff ff       	call   0x41a215
41ae3a:	5f                   	pop    %edi
41ae3b:	5e                   	pop    %esi
41ae3c:	c2 08 00             	ret    $0x8
41ae3f:	53                   	push   %ebx
41ae40:	56                   	push   %esi
41ae41:	8b 74 24 0c          	mov    0xc(%esp),%esi
41ae45:	57                   	push   %edi
41ae46:	ff 76 04             	push   0x4(%esi)
41ae49:	ff 15 c0 98 43 00    	call   *0x4398c0
41ae4f:	8b d8                	mov    %eax,%ebx
41ae51:	33 ff                	xor    %edi,%edi
41ae53:	85 db                	test   %ebx,%ebx
41ae55:	7e 3b                	jle    0x41ae92
41ae57:	57                   	push   %edi
41ae58:	ff 76 04             	push   0x4(%esi)
41ae5b:	ff 15 c4 98 43 00    	call   *0x4398c4
41ae61:	50                   	push   %eax
41ae62:	e8 d9 1d 00 00       	call   0x41cc40
41ae67:	85 c0                	test   %eax,%eax
41ae69:	74 12                	je     0x41ae7d
41ae6b:	ff 74 24 14          	push   0x14(%esp)
41ae6f:	50                   	push   %eax
41ae70:	e8 ca ff ff ff       	call   0x41ae3f
41ae75:	59                   	pop    %ecx
41ae76:	85 c0                	test   %eax,%eax
41ae78:	59                   	pop    %ecx
41ae79:	75 19                	jne    0x41ae94
41ae7b:	eb 10                	jmp    0x41ae8d
41ae7d:	57                   	push   %edi
41ae7e:	ff 76 04             	push   0x4(%esi)
41ae81:	ff 15 c8 98 43 00    	call   *0x4398c8
41ae87:	3b 44 24 14          	cmp    0x14(%esp),%eax
41ae8b:	74 0b                	je     0x41ae98
41ae8d:	47                   	inc    %edi
41ae8e:	3b fb                	cmp    %ebx,%edi
41ae90:	7c c5                	jl     0x41ae57
41ae92:	33 c0                	xor    %eax,%eax
41ae94:	5f                   	pop    %edi
41ae95:	5e                   	pop    %esi
41ae96:	5b                   	pop    %ebx
41ae97:	c3                   	ret
41ae98:	ff 76 04             	push   0x4(%esi)
41ae9b:	e8 b6 1d 00 00       	call   0x41cc56
41aea0:	eb f2                	jmp    0x41ae94
41aea2:	b8 34 78 42 00       	mov    $0x427834,%eax
41aea7:	e8 84 0d ff ff       	call   0x40bc30
41aeac:	51                   	push   %ecx
41aead:	83 ec 2c             	sub    $0x2c,%esp
41aeb0:	53                   	push   %ebx
41aeb1:	56                   	push   %esi
41aeb2:	8b 75 08             	mov    0x8(%ebp),%esi
41aeb5:	57                   	push   %edi
41aeb6:	8d 45 c8             	lea    -0x38(%ebp),%eax
41aeb9:	89 65 f0             	mov    %esp,-0x10(%ebp)
41aebc:	50                   	push   %eax
41aebd:	ff 76 24             	push   0x24(%esi)
41aec0:	ff 76 10             	push   0x10(%esi)
41aec3:	ff 15 b8 98 43 00    	call   *0x4398b8
41aec9:	85 c0                	test   %eax,%eax
41aecb:	75 54                	jne    0x41af21
41aecd:	56                   	push   %esi
41aece:	ff 15 bc 98 43 00    	call   *0x4398bc
41aed4:	66 85 c0             	test   %ax,%ax
41aed7:	75 04                	jne    0x41aedd
41aed9:	33 c0                	xor    %eax,%eax
41aedb:	eb 47                	jmp    0x41af24
41aedd:	e8 65 98 00 00       	call   0x424747
41aee2:	80 78 14 00          	cmpb   $0x0,0x14(%eax)
41aee6:	74 39                	je     0x41af21
41aee8:	6a 01                	push   $0x1
41aeea:	e8 49 a5 00 00       	call   0x425438
41aeef:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41aef3:	e8 4f 98 00 00       	call   0x424747
41aef8:	ff 76 24             	push   0x24(%esi)
41aefb:	8b 35 48 97 43 00    	mov    0x439748,%esi
41af01:	8d 78 34             	lea    0x34(%eax),%edi
41af04:	57                   	push   %edi
41af05:	ff d6                	call   *%esi
41af07:	80 65 09 00          	andb   $0x0,0x9(%ebp)
41af0b:	8d 45 08             	lea    0x8(%ebp),%eax
41af0e:	50                   	push   %eax
41af0f:	57                   	push   %edi
41af10:	c6 45 08 0a          	movb   $0xa,0x8(%ebp)
41af14:	ff d6                	call   *%esi
41af16:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
41af1a:	6a 01                	push   $0x1
41af1c:	e8 87 a5 00 00       	call   0x4254a8
41af21:	6a 01                	push   $0x1
41af23:	58                   	pop    %eax
41af24:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41af27:	5f                   	pop    %edi
41af28:	5e                   	pop    %esi
41af29:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41af30:	5b                   	pop    %ebx
41af31:	c9                   	leave
41af32:	c2 04 00             	ret    $0x4
41af35:	6a 01                	push   $0x1
41af37:	e8 6c a5 00 00       	call   0x4254a8
41af3c:	6a 00                	push   $0x0
41af3e:	6a 00                	push   $0x0
41af40:	e8 2b 15 ff ff       	call   0x40c470
41af45:	b8 16 af 41 00       	mov    $0x41af16,%eax
41af4a:	c3                   	ret
41af4b:	55                   	push   %ebp
41af4c:	8b ec                	mov    %esp,%ebp
41af4e:	83 ec 28             	sub    $0x28,%esp
41af51:	53                   	push   %ebx
41af52:	56                   	push   %esi
41af53:	57                   	push   %edi
41af54:	e8 9b 94 00 00       	call   0x4243f4
41af59:	8b f0                	mov    %eax,%esi
41af5b:	83 c6 58             	add    $0x58,%esi
41af5e:	e8 e4 97 00 00       	call   0x424747
41af63:	8b 5d 0c             	mov    0xc(%ebp),%ebx
41af66:	8b 78 08             	mov    0x8(%eax),%edi
41af69:	85 db                	test   %ebx,%ebx
41af6b:	75 1f                	jne    0x41af8c
41af6d:	39 5d 10             	cmp    %ebx,0x10(%ebp)
41af70:	75 1a                	jne    0x41af8c
41af72:	39 5d 14             	cmp    %ebx,0x14(%ebp)
41af75:	75 15                	jne    0x41af8c
41af77:	ff 75 08             	push   0x8(%ebp)
41af7a:	57                   	push   %edi
41af7b:	68 30 9e 42 00       	push   $0x429e30
41af80:	56                   	push   %esi
41af81:	ff 15 b4 98 43 00    	call   *0x4398b4
41af87:	83 c4 10             	add    $0x10,%esp
41af8a:	eb 1a                	jmp    0x41afa6
41af8c:	ff 75 14             	push   0x14(%ebp)
41af8f:	ff 75 10             	push   0x10(%ebp)
41af92:	53                   	push   %ebx
41af93:	ff 75 08             	push   0x8(%ebp)
41af96:	57                   	push   %edi
41af97:	68 1c 9e 42 00       	push   $0x429e1c
41af9c:	56                   	push   %esi
41af9d:	ff 15 b4 98 43 00    	call   *0x4398b4
41afa3:	83 c4 1c             	add    $0x1c,%esp
41afa6:	8d 45 d8             	lea    -0x28(%ebp),%eax
41afa9:	50                   	push   %eax
41afaa:	56                   	push   %esi
41afab:	57                   	push   %edi
41afac:	ff 15 b8 98 43 00    	call   *0x4398b8
41afb2:	85 c0                	test   %eax,%eax
41afb4:	75 40                	jne    0x41aff6
41afb6:	8b 45 08             	mov    0x8(%ebp),%eax
41afb9:	8b 4d 14             	mov    0x14(%ebp),%ecx
41afbc:	89 45 d8             	mov    %eax,-0x28(%ebp)
41afbf:	a1 e0 98 43 00       	mov    0x4398e0,%eax
41afc4:	89 45 dc             	mov    %eax,-0x24(%ebp)
41afc7:	33 c0                	xor    %eax,%eax
41afc9:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41afcc:	89 45 e0             	mov    %eax,-0x20(%ebp)
41afcf:	89 45 f8             	mov    %eax,-0x8(%ebp)
41afd2:	89 4d ec             	mov    %ecx,-0x14(%ebp)
41afd5:	8b 4d 10             	mov    0x10(%ebp),%ecx
41afd8:	8d 45 d8             	lea    -0x28(%ebp),%eax
41afdb:	50                   	push   %eax
41afdc:	89 7d e8             	mov    %edi,-0x18(%ebp)
41afdf:	89 5d f0             	mov    %ebx,-0x10(%ebp)
41afe2:	89 4d f4             	mov    %ecx,-0xc(%ebp)
41afe5:	89 75 fc             	mov    %esi,-0x4(%ebp)
41afe8:	e8 b5 fe ff ff       	call   0x41aea2
41afed:	85 c0                	test   %eax,%eax
41afef:	75 05                	jne    0x41aff6
41aff1:	e8 66 4f 00 00       	call   0x41ff5c
41aff6:	8b c6                	mov    %esi,%eax
41aff8:	5f                   	pop    %edi
41aff9:	5e                   	pop    %esi
41affa:	5b                   	pop    %ebx
41affb:	c9                   	leave
41affc:	c2 10 00             	ret    $0x10
41afff:	55                   	push   %ebp
41b000:	8b ec                	mov    %esp,%ebp
41b002:	83 ec 0c             	sub    $0xc,%esp
41b005:	8b 45 08             	mov    0x8(%ebp),%eax
41b008:	56                   	push   %esi
41b009:	89 45 f8             	mov    %eax,-0x8(%ebp)