41be23:	89 06                	mov    %eax,(%esi)
41be25:	e8 47 08 00 00       	call   0x41c671
41be2a:	6a 16                	push   $0x16
41be2c:	5e                   	pop    %esi
41be2d:	89 30                	mov    %esi,(%eax)
41be2f:	e8 ba 15 ff ff       	call   0x40d3ee
41be34:	8b c6                	mov    %esi,%eax
41be36:	eb 1a                	jmp    0x41be52
41be38:	51                   	push   %ecx
41be39:	ff 75 0c             	push   0xc(%ebp)
41be3c:	85 f6                	test   %esi,%esi
41be3e:	74 09                	je     0x41be49
41be40:	e8 37 a3 00 00       	call   0x42617c
41be45:	89 06                	mov    %eax,(%esi)
41be47:	eb 05                	jmp    0x41be4e
41be49:	e8 2e a3 00 00       	call   0x42617c
41be4e:	59                   	pop    %ecx
41be4f:	59                   	pop    %ecx
41be50:	33 c0                	xor    %eax,%eax
41be52:	5e                   	pop    %esi
41be53:	5d                   	pop    %ebp
41be54:	c3                   	ret
41be55:	6a 08                	push   $0x8
41be57:	68 80 ad 43 00       	push   $0x43ad80
41be5c:	e8 6f e6 fe ff       	call   0x40a4d0
41be61:	e8 83 04 00 00       	call   0x41c2e9
41be66:	8b 70 0c             	mov    0xc(%eax),%esi
41be69:	85 f6                	test   %esi,%esi
41be6b:	74 1e                	je     0x41be8b
41be6d:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41be71:	8b ce                	mov    %esi,%ecx
41be73:	ff 15 68 12 43 00    	call   *0x431268
41be79:	ff d6                	call   *%esi
41be7b:	eb 07                	jmp    0x41be84
41be7d:	33 c0                	xor    %eax,%eax
41be7f:	40                   	inc    %eax
41be80:	c3                   	ret
41be81:	8b 65 e8             	mov    -0x18(%ebp),%esp
41be84:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41be8b:	e8 01 00 00 00       	call   0x41be91
41be90:	cc                   	int3
41be91:	e8 2a 9f 00 00       	call   0x425dc0
41be96:	85 c0                	test   %eax,%eax
41be98:	74 08                	je     0x41bea2
41be9a:	6a 16                	push   $0x16
41be9c:	e8 64 9f 00 00       	call   0x425e05
41bea1:	59                   	pop    %ecx
41bea2:	f6 05 44 d1 43 00 02 	testb  $0x2,0x43d144
41bea9:	74 22                	je     0x41becd
41beab:	6a 17                	push   $0x17
41bead:	ff 15 a4 11 43 00    	call   *0x4311a4
41beb3:	85 c0                	test   %eax,%eax
41beb5:	74 05                	je     0x41bebc
41beb7:	6a 07                	push   $0x7
41beb9:	59                   	pop    %ecx
41beba:	cd 29                	int    $0x29
41bebc:	6a 01                	push   $0x1
41bebe:	68 15 00 00 40       	push   $0x40000015
41bec3:	6a 03                	push   $0x3
41bec5:	e8 28 13 ff ff       	call   0x40d1f2
41beca:	83 c4 0c             	add    $0xc,%esp
41becd:	6a 03                	push   $0x3
41becf:	e8 bc e1 ff ff       	call   0x41a090
41bed4:	cc                   	int3
41bed5:	8b ff                	mov    %edi,%edi
41bed7:	55                   	push   %ebp
41bed8:	8b ec                	mov    %esp,%ebp
41beda:	8b 55 08             	mov    0x8(%ebp),%edx
41bedd:	56                   	push   %esi
41bede:	57                   	push   %edi
41bedf:	85 d2                	test   %edx,%edx
41bee1:	74 11                	je     0x41bef4
41bee3:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41bee6:	85 c9                	test   %ecx,%ecx
41bee8:	74 0a                	je     0x41bef4
41beea:	8b 75 10             	mov    0x10(%ebp),%esi
41beed:	85 f6                	test   %esi,%esi
41beef:	75 18                	jne    0x41bf09
41bef1:	c6 02 00             	movb   $0x0,(%edx)
41bef4:	e8 78 07 00 00       	call   0x41c671
41bef9:	6a 16                	push   $0x16
41befb:	5e                   	pop    %esi
41befc:	89 30                	mov    %esi,(%eax)
41befe:	e8 eb 14 ff ff       	call   0x40d3ee
41bf03:	5f                   	pop    %edi
41bf04:	8b c6                	mov    %esi,%eax
41bf06:	5e                   	pop    %esi
41bf07:	5d                   	pop    %ebp
41bf08:	c3                   	ret
41bf09:	8b fa                	mov    %edx,%edi
41bf0b:	2b f2                	sub    %edx,%esi
41bf0d:	8a 04 3e             	mov    (%esi,%edi,1),%al
41bf10:	88 07                	mov    %al,(%edi)
41bf12:	47                   	inc    %edi
41bf13:	84 c0                	test   %al,%al
41bf15:	74 14                	je     0x41bf2b
41bf17:	83 e9 01             	sub    $0x1,%ecx
41bf1a:	75 f1                	jne    0x41bf0d
41bf1c:	85 c9                	test   %ecx,%ecx
41bf1e:	75 0b                	jne    0x41bf2b
41bf20:	88 0a                	mov    %cl,(%edx)
41bf22:	e8 4a 07 00 00       	call   0x41c671
41bf27:	6a 22                	push   $0x22
41bf29:	eb d0                	jmp    0x41befb
41bf2b:	33 f6                	xor    %esi,%esi
41bf2d:	eb d4                	jmp    0x41bf03
41bf2f:	cc                   	int3
41bf30:	53                   	push   %ebx
41bf31:	56                   	push   %esi
41bf32:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
41bf36:	8b 54 24 10          	mov    0x10(%esp),%edx
41bf3a:	8b 5c 24 14          	mov    0x14(%esp),%ebx
41bf3e:	f7 c3 ff ff ff ff    	test   $0xffffffff,%ebx
41bf44:	74 50                	je     0x41bf96
41bf46:	2b ca                	sub    %edx,%ecx
41bf48:	f7 c2 03 00 00 00    	test   $0x3,%edx
41bf4e:	74 17                	je     0x41bf67
41bf50:	0f b6 04 11          	movzbl (%ecx,%edx,1),%eax
41bf54:	3a 02                	cmp    (%edx),%al
41bf56:	75 48                	jne    0x41bfa0
41bf58:	85 c0                	test   %eax,%eax
41bf5a:	74 3a                	je     0x41bf96
41bf5c:	42                   	inc    %edx
41bf5d:	83 eb 01             	sub    $0x1,%ebx
41bf60:	76 34                	jbe    0x41bf96
41bf62:	f6 c2 03             	test   $0x3,%dl
41bf65:	75 e9                	jne    0x41bf50
41bf67:	8d 04 11             	lea    (%ecx,%edx,1),%eax
41bf6a:	25 ff 0f 00 00       	and    $0xfff,%eax
41bf6f:	3d fc 0f 00 00       	cmp    $0xffc,%eax
41bf74:	77 da                	ja     0x41bf50
41bf76:	8b 04 11             	mov    (%ecx,%edx,1),%eax
41bf79:	3b 02                	cmp    (%edx),%eax
41bf7b:	75 d3                	jne    0x41bf50
41bf7d:	83 eb 04             	sub    $0x4,%ebx
41bf80:	76 14                	jbe    0x41bf96
41bf82:	8d b0 ff fe fe fe    	lea    -0x1010101(%eax),%esi
41bf88:	83 c2 04             	add    $0x4,%edx
41bf8b:	f7 d0                	not    %eax
41bf8d:	23 c6                	and    %esi,%eax
41bf8f:	a9 80 80 80 80       	test   $0x80808080,%eax
41bf94:	74 d1                	je     0x41bf67
41bf96:	33 c0                	xor    %eax,%eax
41bf98:	5e                   	pop    %esi
41bf99:	5b                   	pop    %ebx
41bf9a:	c3                   	ret
41bf9b:	eb 03                	jmp    0x41bfa0
41bf9d:	cc                   	int3
41bf9e:	cc                   	int3
41bf9f:	cc                   	int3
41bfa0:	1b c0                	sbb    %eax,%eax
41bfa2:	83 c8 01             	or     $0x1,%eax
41bfa5:	5e                   	pop    %esi
41bfa6:	5b                   	pop    %ebx
41bfa7:	c3                   	ret
41bfa8:	6a 08                	push   $0x8
41bfaa:	68 a0 ad 43 00       	push   $0x43ada0
41bfaf:	e8 1c e5 fe ff       	call   0x40a4d0
41bfb4:	8b 45 08             	mov    0x8(%ebp),%eax
41bfb7:	ff 30                	push   (%eax)
41bfb9:	e8 c4 73 00 00       	call   0x423382
41bfbe:	59                   	pop    %ecx
41bfbf:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41bfc3:	8b 45 0c             	mov    0xc(%ebp),%eax
41bfc6:	8b 00                	mov    (%eax),%eax
41bfc8:	8b 00                	mov    (%eax),%eax
41bfca:	8b 40 48             	mov    0x48(%eax),%eax
41bfcd:	f0 ff 00             	lock incl (%eax)
41bfd0:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41bfd7:	e8 12 00 00 00       	call   0x41bfee
41bfdc:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41bfdf:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41bfe6:	59                   	pop    %ecx
41bfe7:	5f                   	pop    %edi
41bfe8:	5e                   	pop    %esi
41bfe9:	5b                   	pop    %ebx
41bfea:	c9                   	leave
41bfeb:	c2 0c 00             	ret    $0xc
41bfee:	8b 45 10             	mov    0x10(%ebp),%eax
41bff1:	ff 30                	push   (%eax)
41bff3:	e8 d2 73 00 00       	call   0x4233ca
41bff8:	59                   	pop    %ecx
41bff9:	c3                   	ret
41bffa:	cc                   	int3
41bffb:	cc                   	int3
41bffc:	cc                   	int3
41bffd:	6a 08                	push   $0x8
41bfff:	68 e0 ad 43 00       	push   $0x43ade0
41c004:	e8 c7 e4 fe ff       	call   0x40a4d0
41c009:	8b 45 08             	mov    0x8(%ebp),%eax
41c00c:	ff 30                	push   (%eax)
41c00e:	e8 6f 73 00 00       	call   0x423382
41c013:	59                   	pop    %ecx
41c014:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41c018:	8b 45 0c             	mov    0xc(%ebp),%eax
41c01b:	8b 00                	mov    (%eax),%eax
41c01d:	8b 00                	mov    (%eax),%eax
41c01f:	8b 48 48             	mov    0x48(%eax),%ecx
41c022:	85 c9                	test   %ecx,%ecx
41c024:	74 18                	je     0x41c03e
41c026:	83 c8 ff             	or     $0xffffffff,%eax
41c029:	f0 0f c1 01          	lock xadd %eax,(%ecx)
41c02d:	75 0f                	jne    0x41c03e
41c02f:	81 f9 b8 d5 43 00    	cmp    $0x43d5b8,%ecx
41c035:	74 07                	je     0x41c03e
41c037:	51                   	push   %ecx
41c038:	e8 d3 ab fe ff       	call   0x406c10
41c03d:	59                   	pop    %ecx
41c03e:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41c045:	e8 12 00 00 00       	call   0x41c05c
41c04a:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41c04d:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41c054:	59                   	pop    %ecx
41c055:	5f                   	pop    %edi
41c056:	5e                   	pop    %esi
41c057:	5b                   	pop    %ebx
41c058:	c9                   	leave
41c059:	c2 0c 00             	ret    $0xc
41c05c:	8b 45 10             	mov    0x10(%ebp),%eax
41c05f:	ff 30                	push   (%eax)
41c061:	e8 64 73 00 00       	call   0x4233ca
41c066:	59                   	pop    %ecx
41c067:	c3                   	ret
41c068:	6a 08                	push   $0x8
41c06a:	68 00 ae 43 00       	push   $0x43ae00
41c06f:	e8 5c e4 fe ff       	call   0x40a4d0
41c074:	8b 45 08             	mov    0x8(%ebp),%eax
41c077:	ff 30                	push   (%eax)
41c079:	e8 04 73 00 00       	call   0x423382
41c07e:	59                   	pop    %ecx
41c07f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41c083:	6a 00                	push   $0x0
41c085:	8b 45 0c             	mov    0xc(%ebp),%eax
41c088:	8b 00                	mov    (%eax),%eax
41c08a:	ff 30                	push   (%eax)
41c08c:	e8 0d 02 00 00       	call   0x41c29e
41c091:	59                   	pop    %ecx
41c092:	59                   	pop    %ecx
41c093:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41c09a:	e8 12 00 00 00       	call   0x41c0b1
41c09f:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41c0a2:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41c0a9:	59                   	pop    %ecx
41c0aa:	5f                   	pop    %edi
41c0ab:	5e                   	pop    %esi
41c0ac:	5b                   	pop    %ebx
41c0ad:	c9                   	leave
41c0ae:	c2 0c 00             	ret    $0xc
41c0b1:	8b 45 10             	mov    0x10(%ebp),%eax
41c0b4:	ff 30                	push   (%eax)
41c0b6:	e8 0f 73 00 00       	call   0x4233ca
41c0bb:	59                   	pop    %ecx
41c0bc:	c3                   	ret
41c0bd:	6a 08                	push   $0x8
41c0bf:	68 c0 ad 43 00       	push   $0x43adc0
41c0c4:	e8 07 e4 fe ff       	call   0x40a4d0
41c0c9:	8b 45 08             	mov    0x8(%ebp),%eax
41c0cc:	ff 30                	push   (%eax)
41c0ce:	e8 af 72 00 00       	call   0x423382
41c0d3:	59                   	pop    %ecx
41c0d4:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41c0d8:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41c0db:	8b 41 04             	mov    0x4(%ecx),%eax
41c0de:	8b 00                	mov    (%eax),%eax
41c0e0:	ff 30                	push   (%eax)
41c0e2:	8b 01                	mov    (%ecx),%eax
41c0e4:	ff 30                	push   (%eax)
41c0e6:	e8 b3 01 00 00       	call   0x41c29e
41c0eb:	59                   	pop    %ecx
41c0ec:	59                   	pop    %ecx
41c0ed:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41c0f4:	e8 12 00 00 00       	call   0x41c10b
41c0f9:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41c0fc:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41c103:	59                   	pop    %ecx
41c104:	5f                   	pop    %edi
41c105:	5e                   	pop    %esi
41c106:	5b                   	pop    %ebx
41c107:	c9                   	leave
41c108:	c2 0c 00             	ret    $0xc
41c10b:	8b 45 10             	mov    0x10(%ebp),%eax
41c10e:	ff 30                	push   (%eax)
41c110:	e8 b5 72 00 00       	call   0x4233ca
41c115:	59                   	pop    %ecx
41c116:	c3                   	ret
41c117:	8b ff                	mov    %edi,%edi
41c119:	55                   	push   %ebp
41c11a:	8b ec                	mov    %esp,%ebp
41c11c:	83 ec 14             	sub    $0x14,%esp
41c11f:	8b 45 08             	mov    0x8(%ebp),%eax
41c122:	33 c9                	xor    %ecx,%ecx
41c124:	41                   	inc    %ecx
41c125:	6a 43                	push   $0x43
41c127:	89 48 18             	mov    %ecx,0x18(%eax)
41c12a:	8b 45 08             	mov    0x8(%ebp),%eax
41c12d:	c7 00 e8 30 43 00    	movl   $0x4330e8,(%eax)
41c133:	8b 45 08             	mov    0x8(%ebp),%eax
41c136:	89 88 50 03 00 00    	mov    %ecx,0x350(%eax)
41c13c:	8b 45 08             	mov    0x8(%ebp),%eax
41c13f:	59                   	pop    %ecx
41c140:	6a 05                	push   $0x5
41c142:	c7 40 48 b8 d5 43 00 	movl   $0x43d5b8,0x48(%eax)
41c149:	8b 45 08             	mov    0x8(%ebp),%eax
41c14c:	66 89 48 6c          	mov    %cx,0x6c(%eax)
41c150:	8b 45 08             	mov    0x8(%ebp),%eax
41c153:	66 89 88 72 01 00 00 	mov    %cx,0x172(%eax)
41c15a:	8d 4d ff             	lea    -0x1(%ebp),%ecx
41c15d:	8b 45 08             	mov    0x8(%ebp),%eax
41c160:	83 a0 4c 03 00 00 00 	andl   $0x0,0x34c(%eax)
41c167:	8d 45 08             	lea    0x8(%ebp),%eax
41c16a:	89 45 f0             	mov    %eax,-0x10(%ebp)
41c16d:	58                   	pop    %eax
41c16e:	89 45 f8             	mov    %eax,-0x8(%ebp)
41c171:	89 45 ec             	mov    %eax,-0x14(%ebp)
41c174:	8d 45 f8             	lea    -0x8(%ebp),%eax
41c177:	50                   	push   %eax
41c178:	8d 45 f0             	lea    -0x10(%ebp),%eax
41c17b:	50                   	push   %eax
41c17c:	8d 45 ec             	lea    -0x14(%ebp),%eax
41c17f:	50                   	push   %eax
41c180:	e8 23 fe ff ff       	call   0x41bfa8
41c185:	8d 45 08             	lea    0x8(%ebp),%eax
41c188:	89 45 f4             	mov    %eax,-0xc(%ebp)
41c18b:	8d 4d ff             	lea    -0x1(%ebp),%ecx
41c18e:	6a 04                	push   $0x4
41c190:	8d 45 0c             	lea    0xc(%ebp),%eax
41c193:	89 45 f8             	mov    %eax,-0x8(%ebp)
41c196:	58                   	pop    %eax
41c197:	89 45 ec             	mov    %eax,-0x14(%ebp)
41c19a:	89 45 f0             	mov    %eax,-0x10(%ebp)
41c19d:	8d 45 ec             	lea    -0x14(%ebp),%eax
41c1a0:	50                   	push   %eax
41c1a1:	8d 45 f4             	lea    -0xc(%ebp),%eax
41c1a4:	50                   	push   %eax
41c1a5:	8d 45 f0             	lea    -0x10(%ebp),%eax
41c1a8:	50                   	push   %eax
41c1a9:	e8 0f ff ff ff       	call   0x41c0bd
41c1ae:	c9                   	leave
41c1af:	c3                   	ret
41c1b0:	8b ff                	mov    %edi,%edi
41c1b2:	55                   	push   %ebp
41c1b3:	8b ec                	mov    %esp,%ebp
41c1b5:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
41c1b9:	74 12                	je     0x41c1cd
41c1bb:	ff 75 08             	push   0x8(%ebp)
41c1be:	e8 0e 00 00 00       	call   0x41c1d1
41c1c3:	ff 75 08             	push   0x8(%ebp)
41c1c6:	e8 45 aa fe ff       	call   0x406c10
41c1cb:	59                   	pop    %ecx
41c1cc:	59                   	pop    %ecx