41acf6:	75 0d                	jne    0x41ad05
41acf8:	e8 29 e5 ff ff       	call   0x419226
41acfd:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
41ad03:	eb 3f                	jmp    0x41ad44
41ad05:	6a 0a                	push   $0xa
41ad07:	e8 62 00 00 00       	call   0x41ad6e
41ad0c:	59                   	pop    %ecx
41ad0d:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41ad10:	39 1e                	cmp    %ebx,(%esi)
41ad12:	75 38                	jne    0x41ad4c
41ad14:	68 a0 0f 00 00       	push   $0xfa0
41ad19:	57                   	push   %edi
41ad1a:	e8 6b 76 00 00       	call   0x42238a
41ad1f:	59                   	pop    %ecx
41ad20:	59                   	pop    %ecx
41ad21:	85 c0                	test   %eax,%eax
41ad23:	75 23                	jne    0x41ad48
41ad25:	57                   	push   %edi
41ad26:	e8 73 b6 ff ff       	call   0x41639e
41ad2b:	e8 f6 e4 ff ff       	call   0x419226
41ad30:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
41ad36:	6a ff                	push   $0xffffffff
41ad38:	8d 45 f0             	lea    -0x10(%ebp),%eax
41ad3b:	50                   	push   %eax
41ad3c:	e8 f5 b7 ff ff       	call   0x416536
41ad41:	83 c4 0c             	add    $0xc,%esp
41ad44:	33 c0                	xor    %eax,%eax
41ad46:	eb 17                	jmp    0x41ad5f
41ad48:	89 3e                	mov    %edi,(%esi)
41ad4a:	eb 07                	jmp    0x41ad53
41ad4c:	57                   	push   %edi
41ad4d:	e8 4c b6 ff ff       	call   0x41639e
41ad52:	59                   	pop    %ecx
41ad53:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
41ad57:	e8 09 00 00 00       	call   0x41ad65
41ad5c:	33 c0                	xor    %eax,%eax
41ad5e:	40                   	inc    %eax
41ad5f:	e8 bf d4 ff ff       	call   0x418223
41ad64:	c3                   	ret
41ad65:	6a 0a                	push   $0xa
41ad67:	e8 35 ff ff ff       	call   0x41aca1
41ad6c:	59                   	pop    %ecx
41ad6d:	c3                   	ret
41ad6e:	55                   	push   %ebp
41ad6f:	8b ec                	mov    %esp,%ebp
41ad71:	8b 45 08             	mov    0x8(%ebp),%eax
41ad74:	56                   	push   %esi
41ad75:	8d 34 c5 b8 8d 4a 00 	lea    0x4a8db8(,%eax,8),%esi
41ad7c:	83 3e 00             	cmpl   $0x0,(%esi)
41ad7f:	75 13                	jne    0x41ad94
41ad81:	50                   	push   %eax
41ad82:	e8 47 ff ff ff       	call   0x41acce
41ad87:	85 c0                	test   %eax,%eax
41ad89:	59                   	pop    %ecx
41ad8a:	75 08                	jne    0x41ad94
41ad8c:	6a 11                	push   $0x11
41ad8e:	e8 64 c8 ff ff       	call   0x4175f7
41ad93:	59                   	pop    %ecx
41ad94:	ff 36                	push   (%esi)
41ad96:	ff 15 10 03 4b 00    	call   *0x4b0310
41ad9c:	5e                   	pop    %esi
41ad9d:	5d                   	pop    %ebp
41ad9e:	c3                   	ret
41ad9f:	83 3d 04 c7 4a 00 02 	cmpl   $0x2,0x4ac704
41ada6:	75 0d                	jne    0x41adb5
41ada8:	83 3d 10 c7 4a 00 05 	cmpl   $0x5,0x4ac710
41adaf:	72 04                	jb     0x41adb5
41adb1:	33 c0                	xor    %eax,%eax
41adb3:	40                   	inc    %eax
41adb4:	c3                   	ret
41adb5:	6a 03                	push   $0x3
41adb7:	58                   	pop    %eax
41adb8:	c3                   	ret
41adb9:	33 c0                	xor    %eax,%eax
41adbb:	39 44 24 04          	cmp    %eax,0x4(%esp)
41adbf:	6a 00                	push   $0x0
41adc1:	0f 94 c0             	sete   %al
41adc4:	68 00 10 00 00       	push   $0x1000
41adc9:	50                   	push   %eax
41adca:	ff 15 68 01 4b 00    	call   *0x4b0168
41add0:	85 c0                	test   %eax,%eax
41add2:	a3 48 e1 4a 00       	mov    %eax,0x4ae148
41add7:	74 2a                	je     0x41ae03
41add9:	e8 c1 ff ff ff       	call   0x41ad9f
41adde:	83 f8 03             	cmp    $0x3,%eax
41ade1:	a3 58 e1 4a 00       	mov    %eax,0x4ae158
41ade6:	75 1e                	jne    0x41ae06
41ade8:	68 f8 03 00 00       	push   $0x3f8
41aded:	e8 b2 00 00 00       	call   0x41aea4
41adf2:	85 c0                	test   %eax,%eax
41adf4:	59                   	pop    %ecx
41adf5:	75 0f                	jne    0x41ae06
41adf7:	ff 35 48 e1 4a 00    	push   0x4ae148
41adfd:	ff 15 64 01 4b 00    	call   *0x4b0164
41ae03:	33 c0                	xor    %eax,%eax
41ae05:	c3                   	ret
41ae06:	33 c0                	xor    %eax,%eax
41ae08:	40                   	inc    %eax
41ae09:	c3                   	ret
41ae0a:	83 3d 58 e1 4a 00 03 	cmpl   $0x3,0x4ae158
41ae11:	75 69                	jne    0x41ae7c
41ae13:	53                   	push   %ebx
41ae14:	33 db                	xor    %ebx,%ebx
41ae16:	39 1d 30 e1 4a 00    	cmp    %ebx,0x4ae130
41ae1c:	55                   	push   %ebp
41ae1d:	8b 2d e8 01 4b 00    	mov    0x4b01e8,%ebp
41ae23:	7e 45                	jle    0x41ae6a
41ae25:	56                   	push   %esi
41ae26:	8b 35 34 e1 4a 00    	mov    0x4ae134,%esi
41ae2c:	57                   	push   %edi
41ae2d:	8b 3d 6c 01 4b 00    	mov    0x4b016c,%edi
41ae33:	83 c6 0c             	add    $0xc,%esi
41ae36:	68 00 40 00 00       	push   $0x4000
41ae3b:	68 00 00 10 00       	push   $0x100000
41ae40:	ff 36                	push   (%esi)
41ae42:	ff d7                	call   *%edi
41ae44:	68 00 80 00 00       	push   $0x8000
41ae49:	6a 00                	push   $0x0
41ae4b:	ff 36                	push   (%esi)
41ae4d:	ff d7                	call   *%edi
41ae4f:	ff 76 04             	push   0x4(%esi)
41ae52:	6a 00                	push   $0x0
41ae54:	ff 35 48 e1 4a 00    	push   0x4ae148
41ae5a:	ff d5                	call   *%ebp
41ae5c:	83 c6 14             	add    $0x14,%esi
41ae5f:	43                   	inc    %ebx
41ae60:	3b 1d 30 e1 4a 00    	cmp    0x4ae130,%ebx
41ae66:	7c ce                	jl     0x41ae36
41ae68:	5f                   	pop    %edi
41ae69:	5e                   	pop    %esi
41ae6a:	ff 35 34 e1 4a 00    	push   0x4ae134
41ae70:	6a 00                	push   $0x0
41ae72:	ff 35 48 e1 4a 00    	push   0x4ae148
41ae78:	ff d5                	call   *%ebp
41ae7a:	5d                   	pop    %ebp
41ae7b:	5b                   	pop    %ebx
41ae7c:	ff 35 48 e1 4a 00    	push   0x4ae148
41ae82:	ff 15 64 01 4b 00    	call   *0x4b0164
41ae88:	c3                   	ret
41ae89:	a1 48 e1 4a 00       	mov    0x4ae148,%eax
41ae8e:	c3                   	ret
41ae8f:	a1 58 e1 4a 00       	mov    0x4ae158,%eax
41ae94:	83 e8 03             	sub    $0x3,%eax
41ae97:	f7 d8                	neg    %eax
41ae99:	1b c0                	sbb    %eax,%eax
41ae9b:	f7 d0                	not    %eax
41ae9d:	23 05 38 e1 4a 00    	and    0x4ae138,%eax
41aea3:	c3                   	ret
41aea4:	68 40 01 00 00       	push   $0x140
41aea9:	6a 00                	push   $0x0
41aeab:	ff 35 48 e1 4a 00    	push   0x4ae148
41aeb1:	ff 15 ec 01 4b 00    	call   *0x4b01ec
41aeb7:	85 c0                	test   %eax,%eax
41aeb9:	a3 34 e1 4a 00       	mov    %eax,0x4ae134
41aebe:	75 01                	jne    0x41aec1
41aec0:	c3                   	ret
41aec1:	8b 4c 24 04          	mov    0x4(%esp),%ecx
41aec5:	83 25 2c e1 4a 00 00 	andl   $0x0,0x4ae12c
41aecc:	83 25 30 e1 4a 00 00 	andl   $0x0,0x4ae130
41aed3:	a3 3c e1 4a 00       	mov    %eax,0x4ae13c
41aed8:	33 c0                	xor    %eax,%eax
41aeda:	89 0d 38 e1 4a 00    	mov    %ecx,0x4ae138
41aee0:	c7 05 40 e1 4a 00 10 	movl   $0x10,0x4ae140
41aee7:	00 00 00
41aeea:	40                   	inc    %eax
41aeeb:	c3                   	ret
41aeec:	a1 30 e1 4a 00       	mov    0x4ae130,%eax
41aef1:	8d 0c 80             	lea    (%eax,%eax,4),%ecx
41aef4:	a1 34 e1 4a 00       	mov    0x4ae134,%eax
41aef9:	8d 0c 88             	lea    (%eax,%ecx,4),%ecx
41aefc:	eb 12                	jmp    0x41af10
41aefe:	8b 54 24 04          	mov    0x4(%esp),%edx
41af02:	2b 50 0c             	sub    0xc(%eax),%edx
41af05:	81 fa 00 00 10 00    	cmp    $0x100000,%edx
41af0b:	72 09                	jb     0x41af16
41af0d:	83 c0 14             	add    $0x14,%eax
41af10:	3b c1                	cmp    %ecx,%eax
41af12:	72 ea                	jb     0x41aefe
41af14:	33 c0                	xor    %eax,%eax
41af16:	c3                   	ret
41af17:	55                   	push   %ebp
41af18:	8b ec                	mov    %esp,%ebp
41af1a:	83 ec 10             	sub    $0x10,%esp
41af1d:	8b 4d 08             	mov    0x8(%ebp),%ecx
41af20:	8b 41 10             	mov    0x10(%ecx),%eax
41af23:	56                   	push   %esi
41af24:	8b 75 0c             	mov    0xc(%ebp),%esi
41af27:	57                   	push   %edi
41af28:	8b fe                	mov    %esi,%edi
41af2a:	2b 79 0c             	sub    0xc(%ecx),%edi
41af2d:	83 c6 fc             	add    $0xfffffffc,%esi
41af30:	c1 ef 0f             	shr    $0xf,%edi
41af33:	8b cf                	mov    %edi,%ecx
41af35:	69 c9 04 02 00 00    	imul   $0x204,%ecx,%ecx
41af3b:	8d 8c 01 44 01 00 00 	lea    0x144(%ecx,%eax,1),%ecx
41af42:	89 4d f0             	mov    %ecx,-0x10(%ebp)
41af45:	8b 0e                	mov    (%esi),%ecx
41af47:	49                   	dec    %ecx
41af48:	f6 c1 01             	test   $0x1,%cl
41af4b:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41af4e:	0f 85 d7 02 00 00    	jne    0x41b22b
41af54:	53                   	push   %ebx
41af55:	8d 1c 31             	lea    (%ecx,%esi,1),%ebx
41af58:	8b 13                	mov    (%ebx),%edx
41af5a:	89 55 f4             	mov    %edx,-0xc(%ebp)
41af5d:	8b 56 fc             	mov    -0x4(%esi),%edx
41af60:	89 55 f8             	mov    %edx,-0x8(%ebp)
41af63:	8b 55 f4             	mov    -0xc(%ebp),%edx
41af66:	f6 c2 01             	test   $0x1,%dl
41af69:	89 5d 0c             	mov    %ebx,0xc(%ebp)
41af6c:	75 74                	jne    0x41afe2
41af6e:	c1 fa 04             	sar    $0x4,%edx
41af71:	4a                   	dec    %edx
41af72:	83 fa 3f             	cmp    $0x3f,%edx
41af75:	76 03                	jbe    0x41af7a
41af77:	6a 3f                	push   $0x3f
41af79:	5a                   	pop    %edx
41af7a:	8b 4b 04             	mov    0x4(%ebx),%ecx
41af7d:	3b 4b 08             	cmp    0x8(%ebx),%ecx
41af80:	75 42                	jne    0x41afc4
41af82:	83 fa 20             	cmp    $0x20,%edx
41af85:	bb 00 00 00 80       	mov    $0x80000000,%ebx
41af8a:	73 19                	jae    0x41afa5
41af8c:	8b ca                	mov    %edx,%ecx
41af8e:	d3 eb                	shr    %cl,%ebx
41af90:	8d 4c 02 04          	lea    0x4(%edx,%eax,1),%ecx
41af94:	f7 d3                	not    %ebx
41af96:	21 5c b8 44          	and    %ebx,0x44(%eax,%edi,4)
41af9a:	fe 09                	decb   (%ecx)
41af9c:	75 23                	jne    0x41afc1
41af9e:	8b 4d 08             	mov    0x8(%ebp),%ecx
41afa1:	21 19                	and    %ebx,(%ecx)
41afa3:	eb 1c                	jmp    0x41afc1
41afa5:	8d 4a e0             	lea    -0x20(%edx),%ecx
41afa8:	d3 eb                	shr    %cl,%ebx
41afaa:	8d 4c 02 04          	lea    0x4(%edx,%eax,1),%ecx
41afae:	f7 d3                	not    %ebx
41afb0:	21 9c b8 c4 00 00 00 	and    %ebx,0xc4(%eax,%edi,4)
41afb7:	fe 09                	decb   (%ecx)
41afb9:	75 06                	jne    0x41afc1
41afbb:	8b 4d 08             	mov    0x8(%ebp),%ecx
41afbe:	21 59 04             	and    %ebx,0x4(%ecx)
41afc1:	8b 5d 0c             	mov    0xc(%ebp),%ebx
41afc4:	8b 53 08             	mov    0x8(%ebx),%edx
41afc7:	8b 5b 04             	mov    0x4(%ebx),%ebx
41afca:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41afcd:	03 4d f4             	add    -0xc(%ebp),%ecx
41afd0:	89 5a 04             	mov    %ebx,0x4(%edx)
41afd3:	8b 55 0c             	mov    0xc(%ebp),%edx
41afd6:	8b 5a 04             	mov    0x4(%edx),%ebx
41afd9:	8b 52 08             	mov    0x8(%edx),%edx
41afdc:	89 53 08             	mov    %edx,0x8(%ebx)
41afdf:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41afe2:	8b d1                	mov    %ecx,%edx
41afe4:	c1 fa 04             	sar    $0x4,%edx
41afe7:	4a                   	dec    %edx
41afe8:	83 fa 3f             	cmp    $0x3f,%edx
41afeb:	76 03                	jbe    0x41aff0
41afed:	6a 3f                	push   $0x3f
41afef:	5a                   	pop    %edx
41aff0:	8b 5d f8             	mov    -0x8(%ebp),%ebx
41aff3:	83 e3 01             	and    $0x1,%ebx
41aff6:	89 5d f4             	mov    %ebx,-0xc(%ebp)
41aff9:	0f 85 8f 00 00 00    	jne    0x41b08e
41afff:	2b 75 f8             	sub    -0x8(%ebp),%esi
41b002:	8b 5d f8             	mov    -0x8(%ebp),%ebx
41b005:	c1 fb 04             	sar    $0x4,%ebx
41b008:	6a 3f                	push   $0x3f
41b00a:	89 75 0c             	mov    %esi,0xc(%ebp)
41b00d:	4b                   	dec    %ebx
41b00e:	5e                   	pop    %esi
41b00f:	3b de                	cmp    %esi,%ebx
41b011:	76 02                	jbe    0x41b015
41b013:	8b de                	mov    %esi,%ebx
41b015:	03 4d f8             	add    -0x8(%ebp),%ecx
41b018:	8b d1                	mov    %ecx,%edx
41b01a:	c1 fa 04             	sar    $0x4,%edx
41b01d:	4a                   	dec    %edx
41b01e:	3b d6                	cmp    %esi,%edx
41b020:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41b023:	76 02                	jbe    0x41b027
41b025:	8b d6                	mov    %esi,%edx
41b027:	3b da                	cmp    %edx,%ebx
41b029:	74 5e                	je     0x41b089
41b02b:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41b02e:	8b 71 04             	mov    0x4(%ecx),%esi
41b031:	3b 71 08             	cmp    0x8(%ecx),%esi
41b034:	75 3b                	jne    0x41b071
41b036:	83 fb 20             	cmp    $0x20,%ebx
41b039:	be 00 00 00 80       	mov    $0x80000000,%esi
41b03e:	73 17                	jae    0x41b057
41b040:	8b cb                	mov    %ebx,%ecx
41b042:	d3 ee                	shr    %cl,%esi
41b044:	f7 d6                	not    %esi
41b046:	21 74 b8 44          	and    %esi,0x44(%eax,%edi,4)
41b04a:	fe 4c 03 04          	decb   0x4(%ebx,%eax,1)
41b04e:	75 21                	jne    0x41b071
41b050:	8b 4d 08             	mov    0x8(%ebp),%ecx
41b053:	21 31                	and    %esi,(%ecx)
41b055:	eb 1a                	jmp    0x41b071
41b057:	8d 4b e0             	lea    -0x20(%ebx),%ecx
41b05a:	d3 ee                	shr    %cl,%esi
41b05c:	f7 d6                	not    %esi
41b05e:	21 b4 b8 c4 00 00 00 	and    %esi,0xc4(%eax,%edi,4)
41b065:	fe 4c 03 04          	decb   0x4(%ebx,%eax,1)
41b069:	75 06                	jne    0x41b071
41b06b:	8b 4d 08             	mov    0x8(%ebp),%ecx
41b06e:	21 71 04             	and    %esi,0x4(%ecx)
41b071:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41b074:	8b 71 08             	mov    0x8(%ecx),%esi
41b077:	8b 49 04             	mov    0x4(%ecx),%ecx
41b07a:	89 4e 04             	mov    %ecx,0x4(%esi)
41b07d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41b080:	8b 71 04             	mov    0x4(%ecx),%esi
41b083:	8b 49 08             	mov    0x8(%ecx),%ecx
41b086:	89 4e 08             	mov    %ecx,0x8(%esi)
41b089:	8b 75 0c             	mov    0xc(%ebp),%esi
41b08c:	eb 03                	jmp    0x41b091
41b08e:	8b 5d 08             	mov    0x8(%ebp),%ebx
41b091:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
41b095:	75 08                	jne    0x41b09f
41b097:	3b da                	cmp    %edx,%ebx
41b099:	0f 84 80 00 00 00    	je     0x41b11f
41b09f:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41b0a2:	8d 0c d1             	lea    (%ecx,%edx,8),%ecx
41b0a5:	8b 59 04             	mov    0x4(%ecx),%ebx
41b0a8:	89 4e 08             	mov    %ecx,0x8(%esi)
41b0ab:	89 5e 04             	mov    %ebx,0x4(%esi)
41b0ae:	89 71 04             	mov    %esi,0x4(%ecx)
41b0b1:	8b 4e 04             	mov    0x4(%esi),%ecx
41b0b4:	89 71 08             	mov    %esi,0x8(%ecx)
41b0b7:	8b 4e 04             	mov    0x4(%esi),%ecx
41b0ba:	3b 4e 08             	cmp    0x8(%esi),%ecx
41b0bd:	75 60                	jne    0x41b11f
41b0bf:	8a 4c 02 04          	mov    0x4(%edx,%eax,1),%cl
41b0c3:	88 4d 0f             	mov    %cl,0xf(%ebp)
41b0c6:	fe c1                	inc    %cl
41b0c8:	83 fa 20             	cmp    $0x20,%edx
41b0cb:	88 4c 02 04          	mov    %cl,0x4(%edx,%eax,1)
41b0cf:	73 25                	jae    0x41b0f6
41b0d1:	80 7d 0f 00          	cmpb   $0x0,0xf(%ebp)
41b0d5:	75 0e                	jne    0x41b0e5
41b0d7:	8b ca                	mov    %edx,%ecx
41b0d9:	bb 00 00 00 80       	mov    $0x80000000,%ebx
41b0de:	d3 eb                	shr    %cl,%ebx
41b0e0:	8b 4d 08             	mov    0x8(%ebp),%ecx
41b0e3:	09 19                	or     %ebx,(%ecx)
41b0e5:	bb 00 00 00 80       	mov    $0x80000000,%ebx
41b0ea:	8b ca                	mov    %edx,%ecx
41b0ec:	d3 eb                	shr    %cl,%ebx