41bc28:	50                   	push   %eax
41bc29:	ff 15 a4 61 42 00    	call   *0x4261a4
41bc2f:	8b 85 6c f4 ff ff    	mov    -0xb94(%ebp),%eax
41bc35:	85 c0                	test   %eax,%eax
41bc37:	74 0f                	je     0x41bc48
41bc39:	50                   	push   %eax
41bc3a:	53                   	push   %ebx
41bc3b:	ff 15 7c 60 42 00    	call   *0x42607c
41bc41:	50                   	push   %eax
41bc42:	ff 15 a4 61 42 00    	call   *0x4261a4
41bc48:	8b 85 54 f4 ff ff    	mov    -0xbac(%ebp),%eax
41bc4e:	85 c0                	test   %eax,%eax
41bc50:	74 0f                	je     0x41bc61
41bc52:	50                   	push   %eax
41bc53:	53                   	push   %ebx
41bc54:	ff 15 7c 60 42 00    	call   *0x42607c
41bc5a:	50                   	push   %eax
41bc5b:	ff 15 a4 61 42 00    	call   *0x4261a4
41bc61:	8b bd 64 f4 ff ff    	mov    -0xb9c(%ebp),%edi
41bc67:	85 ff                	test   %edi,%edi
41bc69:	74 5d                	je     0x41bcc8
41bc6b:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
41bc6f:	74 14                	je     0x41bc85
41bc71:	ff 77 04             	push   0x4(%edi)
41bc74:	53                   	push   %ebx
41bc75:	ff 15 7c 60 42 00    	call   *0x42607c
41bc7b:	50                   	push   %eax
41bc7c:	ff 15 a4 61 42 00    	call   *0x4261a4
41bc82:	89 5f 04             	mov    %ebx,0x4(%edi)
41bc85:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
41bc89:	74 14                	je     0x41bc9f
41bc8b:	ff 77 0c             	push   0xc(%edi)
41bc8e:	53                   	push   %ebx
41bc8f:	ff 15 7c 60 42 00    	call   *0x42607c
41bc95:	50                   	push   %eax
41bc96:	ff 15 a4 61 42 00    	call   *0x4261a4
41bc9c:	89 5f 0c             	mov    %ebx,0xc(%edi)
41bc9f:	83 7f 14 00          	cmpl   $0x0,0x14(%edi)
41bca3:	74 14                	je     0x41bcb9
41bca5:	ff 77 14             	push   0x14(%edi)
41bca8:	53                   	push   %ebx
41bca9:	ff 15 7c 60 42 00    	call   *0x42607c
41bcaf:	50                   	push   %eax
41bcb0:	ff 15 a4 61 42 00    	call   *0x4261a4
41bcb6:	89 5f 14             	mov    %ebx,0x14(%edi)
41bcb9:	57                   	push   %edi
41bcba:	53                   	push   %ebx
41bcbb:	ff 15 7c 60 42 00    	call   *0x42607c
41bcc1:	50                   	push   %eax
41bcc2:	ff 15 a4 61 42 00    	call   *0x4261a4
41bcc8:	8b 85 78 f4 ff ff    	mov    -0xb88(%ebp),%eax
41bcce:	85 c0                	test   %eax,%eax
41bcd0:	74 0f                	je     0x41bce1
41bcd2:	50                   	push   %eax
41bcd3:	53                   	push   %ebx
41bcd4:	ff 15 7c 60 42 00    	call   *0x42607c
41bcda:	50                   	push   %eax
41bcdb:	ff 15 a4 61 42 00    	call   *0x4261a4
41bce1:	85 f6                	test   %esi,%esi
41bce3:	78 76                	js     0x41bd5b
41bce5:	33 c0                	xor    %eax,%eax
41bce7:	40                   	inc    %eax
41bce8:	39 85 d4 f2 ff ff    	cmp    %eax,-0xd2c(%ebp)
41bcee:	72 6b                	jb     0x41bd5b
41bcf0:	8b 85 dc f2 ff ff    	mov    -0xd24(%ebp),%eax
41bcf6:	85 c0                	test   %eax,%eax
41bcf8:	74 61                	je     0x41bd5b
41bcfa:	83 bd d4 f2 ff ff 00 	cmpl   $0x0,-0xd2c(%ebp)
41bd01:	76 58                	jbe    0x41bd5b
41bd03:	8b 10                	mov    (%eax),%edx
41bd05:	8d 48 04             	lea    0x4(%eax),%ecx
41bd08:	3b c8                	cmp    %eax,%ecx
41bd0a:	72 04                	jb     0x41bd10
41bd0c:	8b c3                	mov    %ebx,%eax
41bd0e:	eb 08                	jmp    0x41bd18
41bd10:	83 c9 ff             	or     $0xffffffff,%ecx
41bd13:	b8 95 00 00 c0       	mov    $0xc0000095,%eax
41bd18:	85 c0                	test   %eax,%eax
41bd1a:	78 3f                	js     0x41bd5b
41bd1c:	8b c2                	mov    %edx,%eax
41bd1e:	f7 d8                	neg    %eax
41bd20:	1b c0                	sbb    %eax,%eax
41bd22:	23 c1                	and    %ecx,%eax
41bd24:	83 fa 04             	cmp    $0x4,%edx
41bd27:	75 32                	jne    0x41bd5b
41bd29:	83 38 00             	cmpl   $0x0,(%eax)
41bd2c:	7c 2d                	jl     0x41bd5b
41bd2e:	33 c0                	xor    %eax,%eax
41bd30:	40                   	inc    %eax
41bd31:	39 85 d4 f2 ff ff    	cmp    %eax,-0xd2c(%ebp)
41bd37:	76 22                	jbe    0x41bd5b
41bd39:	8b 85 dc f2 ff ff    	mov    -0xd24(%ebp),%eax
41bd3f:	8b d3                	mov    %ebx,%edx
41bd41:	33 db                	xor    %ebx,%ebx
41bd43:	43                   	inc    %ebx
41bd44:	8b 30                	mov    (%eax),%esi
41bd46:	8d 48 04             	lea    0x4(%eax),%ecx
41bd49:	3b c8                	cmp    %eax,%ecx
41bd4b:	72 0c                	jb     0x41bd59
41bd4d:	8d 04 0e             	lea    (%esi,%ecx,1),%eax
41bd50:	3b c1                	cmp    %ecx,%eax
41bd52:	72 05                	jb     0x41bd59
41bd54:	42                   	inc    %edx
41bd55:	3b d3                	cmp    %ebx,%edx
41bd57:	72 eb                	jb     0x41bd44
41bd59:	33 db                	xor    %ebx,%ebx
41bd5b:	8b b5 38 f4 ff ff    	mov    -0xbc8(%ebp),%esi
41bd61:	8b bd 2c f4 ff ff    	mov    -0xbd4(%ebp),%edi
41bd67:	eb 08                	jmp    0x41bd71
41bd69:	8b b5 38 f4 ff ff    	mov    -0xbc8(%ebp),%esi
41bd6f:	8b fb                	mov    %ebx,%edi
41bd71:	83 bd e8 f2 ff ff 00 	cmpl   $0x0,-0xd18(%ebp)
41bd78:	89 9d e4 f2 ff ff    	mov    %ebx,-0xd1c(%ebp)
41bd7e:	89 9d e0 f2 ff ff    	mov    %ebx,-0xd20(%ebp)
41bd84:	74 1a                	je     0x41bda0
41bd86:	ff b5 e8 f2 ff ff    	push   -0xd18(%ebp)
41bd8c:	53                   	push   %ebx
41bd8d:	ff 15 7c 60 42 00    	call   *0x42607c
41bd93:	50                   	push   %eax
41bd94:	ff 15 a4 61 42 00    	call   *0x4261a4
41bd9a:	89 9d e8 f2 ff ff    	mov    %ebx,-0xd18(%ebp)
41bda0:	8b 85 dc f2 ff ff    	mov    -0xd24(%ebp),%eax
41bda6:	85 c0                	test   %eax,%eax
41bda8:	74 0f                	je     0x41bdb9
41bdaa:	50                   	push   %eax
41bdab:	53                   	push   %ebx
41bdac:	ff 15 7c 60 42 00    	call   *0x42607c
41bdb2:	50                   	push   %eax
41bdb3:	ff 15 a4 61 42 00    	call   *0x4261a4
41bdb9:	85 f6                	test   %esi,%esi
41bdbb:	74 0f                	je     0x41bdcc
41bdbd:	56                   	push   %esi
41bdbe:	53                   	push   %ebx
41bdbf:	ff 15 7c 60 42 00    	call   *0x42607c
41bdc5:	50                   	push   %eax
41bdc6:	ff 15 a4 61 42 00    	call   *0x4261a4
41bdcc:	85 ff                	test   %edi,%edi
41bdce:	74 0f                	je     0x41bddf
41bdd0:	57                   	push   %edi
41bdd1:	53                   	push   %ebx
41bdd2:	ff 15 7c 60 42 00    	call   *0x42607c
41bdd8:	50                   	push   %eax
41bdd9:	ff 15 a4 61 42 00    	call   *0x4261a4
41bddf:	8b 85 44 f3 ff ff    	mov    -0xcbc(%ebp),%eax
41bde5:	89 9d 44 f3 ff ff    	mov    %ebx,-0xcbc(%ebp)
41bdeb:	89 85 2c f3 ff ff    	mov    %eax,-0xcd4(%ebp)
41bdf1:	e9 77 78 ff ff       	jmp    0x41366d
41bdf6:	8b b5 38 f4 ff ff    	mov    -0xbc8(%ebp),%esi
41bdfc:	e9 70 ff ff ff       	jmp    0x41bd71
41be01:	3d e5 00 00 d0       	cmp    $0xd00000e5,%eax
41be06:	74 15                	je     0x41be1d
41be08:	3d 01 d5 04 c0       	cmp    $0xc004d501,%eax
41be0d:	74 0e                	je     0x41be1d
41be0f:	3d 3e 00 00 d0       	cmp    $0xd000003e,%eax
41be14:	75 09                	jne    0x41be1f
41be16:	b8 28 f0 04 c0       	mov    $0xc004f028,%eax
41be1b:	eb 0d                	jmp    0x41be2a
41be1d:	8b c7                	mov    %edi,%eax
41be1f:	85 c0                	test   %eax,%eax
41be21:	79 0b                	jns    0x41be2e
41be23:	3d 7a 00 07 80       	cmp    $0x8007007a,%eax
41be28:	74 0d                	je     0x41be37
41be2a:	8b d8                	mov    %eax,%ebx
41be2c:	eb 0e                	jmp    0x41be3c
41be2e:	83 bd f8 f3 ff ff 04 	cmpl   $0x4,-0xc08(%ebp)
41be35:	74 05                	je     0x41be3c
41be37:	bb 1e f0 04 c0       	mov    $0xc004f01e,%ebx
41be3c:	8d 8d 2c f3 ff ff    	lea    -0xcd4(%ebp),%ecx
41be42:	e8 06 31 00 00       	call   0x41ef4d
41be47:	3b df                	cmp    %edi,%ebx
41be49:	0f 84 4a 6c ff ff    	je     0x412a99
41be4f:	81 fb 01 d3 04 c0    	cmp    $0xc004d301,%ebx
41be55:	0f 84 3e 6c ff ff    	je     0x412a99
41be5b:	81 fb 00 d5 04 c0    	cmp    $0xc004d500,%ebx
41be61:	7e 0c                	jle    0x41be6f
41be63:	81 fb 02 d5 04 c0    	cmp    $0xc004d502,%ebx
41be69:	0f 8e 2a 6c ff ff    	jle    0x412a99
41be6f:	85 db                	test   %ebx,%ebx
41be71:	0f 89 22 6c ff ff    	jns    0x412a99
41be77:	3b de                	cmp    %esi,%ebx
41be79:	0f 84 1a 6c ff ff    	je     0x412a99
41be7f:	8b cb                	mov    %ebx,%ecx
41be81:	e8 af 30 00 00       	call   0x41ef35
41be86:	e9 0e 6c ff ff       	jmp    0x412a99
41be8b:	8b ff                	mov    %edi,%edi
41be8d:	55                   	push   %ebp
41be8e:	8b ec                	mov    %esp,%ebp
41be90:	83 ec 3c             	sub    $0x3c,%esp
41be93:	53                   	push   %ebx
41be94:	56                   	push   %esi
41be95:	57                   	push   %edi
41be96:	33 f6                	xor    %esi,%esi
41be98:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41be9b:	68 01 7f 00 00       	push   $0x7f01
41bea0:	8b da                	mov    %edx,%ebx
41bea2:	89 75 cc             	mov    %esi,-0x34(%ebp)
41bea5:	56                   	push   %esi
41bea6:	89 5d f8             	mov    %ebx,-0x8(%ebp)
41bea9:	89 75 d4             	mov    %esi,-0x2c(%ebp)
41beac:	89 75 d8             	mov    %esi,-0x28(%ebp)
41beaf:	c7 45 c8 30 00 00 00 	movl   $0x30,-0x38(%ebp)
41beb6:	ff 15 88 62 42 00    	call   *0x426288
41bebc:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41bebf:	8b fe                	mov    %esi,%edi
41bec1:	6a 02                	push   $0x2
41bec3:	ff 74 bd f8          	push   -0x8(%ebp,%edi,4)
41bec7:	ff 15 ac 62 42 00    	call   *0x4262ac
41becd:	85 c0                	test   %eax,%eax
41becf:	75 08                	jne    0x41bed9
41bed1:	47                   	inc    %edi
41bed2:	83 ff 02             	cmp    $0x2,%edi
41bed5:	72 ea                	jb     0x41bec1
41bed7:	8b c6                	mov    %esi,%eax
41bed9:	89 45 e0             	mov    %eax,-0x20(%ebp)
41bedc:	8b fe                	mov    %esi,%edi
41bede:	56                   	push   %esi
41bedf:	6a 10                	push   $0x10
41bee1:	6a 10                	push   $0x10
41bee3:	6a 01                	push   $0x1
41bee5:	6a 02                	push   $0x2
41bee7:	ff 74 bd f8          	push   -0x8(%ebp,%edi,4)
41beeb:	ff 15 b0 62 42 00    	call   *0x4262b0
41bef1:	85 c0                	test   %eax,%eax
41bef3:	75 08                	jne    0x41befd
41bef5:	47                   	inc    %edi
41bef6:	83 ff 02             	cmp    $0x2,%edi
41bef9:	72 e3                	jb     0x41bede
41befb:	eb 02                	jmp    0x41beff
41befd:	8b f0                	mov    %eax,%esi
41beff:	8d 45 c8             	lea    -0x38(%ebp),%eax
41bf02:	89 75 f4             	mov    %esi,-0xc(%ebp)
41bf05:	50                   	push   %eax
41bf06:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
41bf0d:	89 5d dc             	mov    %ebx,-0x24(%ebp)
41bf10:	c7 45 f0 b8 25 40 00 	movl   $0x4025b8,-0x10(%ebp)
41bf17:	c7 45 d0 30 ca 40 00 	movl   $0x40ca30,-0x30(%ebp)
41bf1e:	c7 45 e8 06 00 00 00 	movl   $0x6,-0x18(%ebp)
41bf25:	ff 15 8c 62 42 00    	call   *0x42628c
41bf2b:	5f                   	pop    %edi
41bf2c:	5e                   	pop    %esi
41bf2d:	0f b7 c0             	movzwl %ax,%eax
41bf30:	5b                   	pop    %ebx
41bf31:	c9                   	leave
41bf32:	c3                   	ret
41bf33:	8b ff                	mov    %edi,%edi
41bf35:	55                   	push   %ebp
41bf36:	8b ec                	mov    %esp,%ebp
41bf38:	8b 45 08             	mov    0x8(%ebp),%eax
41bf3b:	57                   	push   %edi
41bf3c:	8b 08                	mov    (%eax),%ecx
41bf3e:	83 20 00             	andl   $0x0,(%eax)
41bf41:	8b 3d 74 59 42 00    	mov    0x425974,%edi
41bf47:	89 0d 74 59 42 00    	mov    %ecx,0x425974
41bf4d:	85 ff                	test   %edi,%edi
41bf4f:	74 14                	je     0x41bf65
41bf51:	8b 07                	mov    (%edi),%eax
41bf53:	56                   	push   %esi
41bf54:	6a 01                	push   $0x1
41bf56:	8b 30                	mov    (%eax),%esi
41bf58:	8b ce                	mov    %esi,%ecx
41bf5a:	ff 15 78 64 42 00    	call   *0x426478
41bf60:	8b cf                	mov    %edi,%ecx
41bf62:	ff d6                	call   *%esi
41bf64:	5e                   	pop    %esi
41bf65:	b8 74 59 42 00       	mov    $0x425974,%eax
41bf6a:	5f                   	pop    %edi
41bf6b:	5d                   	pop    %ebp
41bf6c:	c2 04 00             	ret    $0x4
41bf6f:	cc                   	int3
41bf70:	8b ff                	mov    %edi,%edi
41bf72:	55                   	push   %ebp
41bf73:	8b ec                	mov    %esp,%ebp
41bf75:	83 ec 1c             	sub    $0x1c,%esp
41bf78:	56                   	push   %esi
41bf79:	8b 75 08             	mov    0x8(%ebp),%esi
41bf7c:	57                   	push   %edi
41bf7d:	8b f9                	mov    %ecx,%edi
41bf7f:	8b 07                	mov    (%edi),%eax
41bf81:	89 06                	mov    %eax,(%esi)
41bf83:	83 e0 03             	and    $0x3,%eax
41bf86:	3c 03                	cmp    $0x3,%al
41bf88:	0f 84 c6 00 00 00    	je     0x41c054
41bf8e:	53                   	push   %ebx
41bf8f:	e8 08 e2 fe ff       	call   0x40a19c
41bf94:	89 45 f4             	mov    %eax,-0xc(%ebp)
41bf97:	8d 45 f8             	lea    -0x8(%ebp),%eax
41bf9a:	50                   	push   %eax
41bf9b:	8d 45 e4             	lea    -0x1c(%ebp),%eax
41bf9e:	50                   	push   %eax
41bf9f:	e8 0b 01 00 00       	call   0x41c0af
41bfa4:	8b 06                	mov    (%esi),%eax
41bfa6:	8b 55 e4             	mov    -0x1c(%ebp),%edx
41bfa9:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
41bfad:	8b d8                	mov    %eax,%ebx
41bfaf:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41bfb2:	8b c8                	mov    %eax,%ecx
41bfb4:	89 06                	mov    %eax,(%esi)
41bfb6:	74 13                	je     0x41bfcb
41bfb8:	a8 01                	test   $0x1,%al
41bfba:	75 0f                	jne    0x41bfcb
41bfbc:	33 ca                	xor    %edx,%ecx
41bfbe:	81 e1 18 01 00 00    	and    $0x118,%ecx
41bfc4:	33 c8                	xor    %eax,%ecx
41bfc6:	83 c9 01             	or     $0x1,%ecx
41bfc9:	89 0e                	mov    %ecx,(%esi)
41bfcb:	83 e3 02             	and    $0x2,%ebx
41bfce:	75 10                	jne    0x41bfe0
41bfd0:	8b c1                	mov    %ecx,%eax
41bfd2:	33 c2                	xor    %edx,%eax
41bfd4:	25 80 00 00 00       	and    $0x80,%eax
41bfd9:	33 c8                	xor    %eax,%ecx
41bfdb:	83 c9 02             	or     $0x2,%ecx
41bfde:	89 0e                	mov    %ecx,(%esi)
41bfe0:	8b 45 fc             	mov    -0x4(%ebp),%eax
41bfe3:	f0 0f b1 0f          	lock cmpxchg %ecx,(%edi)
41bfe7:	3b 45 fc             	cmp    -0x4(%ebp),%eax
41bfea:	75 bd                	jne    0x41bfa9
41bfec:	85 db                	test   %ebx,%ebx
41bfee:	75 52                	jne    0x41c042
41bff0:	38 1d 84 48 42 00    	cmp    %bl,0x424884
41bff6:	74 4a                	je     0x41c042
41bff8:	bb 88 48 42 00       	mov    $0x424888,%ebx
41bffd:	53                   	push   %ebx
41bffe:	ff 15 60 61 42 00    	call   *0x426160
41c004:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41c007:	a1 94 48 42 00       	mov    0x424894,%eax
41c00c:	85 c9                	test   %ecx,%ecx
41c00e:	74 22                	je     0x41c032
41c010:	3b c8                	cmp    %eax,%ecx
41c012:	75 1e                	jne    0x41c032
41c014:	6a 08                	push   $0x8
41c016:	8d 45 ec             	lea    -0x14(%ebp),%eax
41c019:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
41c020:	50                   	push   %eax
41c021:	b9 b0 48 42 00       	mov    $0x4248b0,%ecx
41c026:	89 7d f0             	mov    %edi,-0x10(%ebp)
41c029:	e8 4b c3 fe ff       	call   0x408379
41c02e:	84 c0                	test   %al,%al
41c030:	75 06                	jne    0x41c038
41c032:	6a fd                	push   $0xfffffffd
41c034:	58                   	pop    %eax
41c035:	f0 21 07             	lock and %eax,(%edi)
41c038:	53                   	push   %ebx
41c039:	ff 15 6c 61 42 00    	call   *0x42616c
41c03f:	8b 55 e4             	mov    -0x1c(%ebp),%edx
41c042:	f6 06 01             	testb  $0x1,(%esi)
41c045:	5b                   	pop    %ebx
41c046:	75 0c                	jne    0x41c054
41c048:	8b 0e                	mov    (%esi),%ecx
41c04a:	33 ca                	xor    %edx,%ecx