41adf9:	c3                   	ret
41adfa:	56                   	push   %esi
41adfb:	8d 71 04             	lea    0x4(%ecx),%esi
41adfe:	eb 0d                	jmp    0x41ae0d
41ae00:	8d 4a 01             	lea    0x1(%edx),%ecx
41ae03:	8b c2                	mov    %edx,%eax
41ae05:	f0 0f b1 0e          	lock cmpxchg %ecx,(%esi)
41ae09:	3b c2                	cmp    %edx,%eax
41ae0b:	74 0a                	je     0x41ae17
41ae0d:	8b 16                	mov    (%esi),%edx
41ae0f:	85 d2                	test   %edx,%edx
41ae11:	75 ed                	jne    0x41ae00
41ae13:	32 c0                	xor    %al,%al
41ae15:	5e                   	pop    %esi
41ae16:	c3                   	ret
41ae17:	b0 01                	mov    $0x1,%al
41ae19:	5e                   	pop    %esi
41ae1a:	c3                   	ret
41ae1b:	8d 41 04             	lea    0x4(%ecx),%eax
41ae1e:	89 41 0c             	mov    %eax,0xc(%ecx)
41ae21:	8d 51 08             	lea    0x8(%ecx),%edx
41ae24:	8d 41 14             	lea    0x14(%ecx),%eax
41ae27:	89 51 10             	mov    %edx,0x10(%ecx)
41ae2a:	89 41 1c             	mov    %eax,0x1c(%ecx)
41ae2d:	8d 41 18             	lea    0x18(%ecx),%eax
41ae30:	89 41 20             	mov    %eax,0x20(%ecx)
41ae33:	8d 41 24             	lea    0x24(%ecx),%eax
41ae36:	89 41 2c             	mov    %eax,0x2c(%ecx)
41ae39:	8d 41 28             	lea    0x28(%ecx),%eax
41ae3c:	89 41 30             	mov    %eax,0x30(%ecx)
41ae3f:	56                   	push   %esi
41ae40:	33 f6                	xor    %esi,%esi
41ae42:	89 32                	mov    %esi,(%edx)
41ae44:	8b 41 20             	mov    0x20(%ecx),%eax
41ae47:	89 30                	mov    %esi,(%eax)
41ae49:	8b 41 30             	mov    0x30(%ecx),%eax
41ae4c:	89 30                	mov    %esi,(%eax)
41ae4e:	8b 41 0c             	mov    0xc(%ecx),%eax
41ae51:	89 30                	mov    %esi,(%eax)
41ae53:	8b 41 1c             	mov    0x1c(%ecx),%eax
41ae56:	89 30                	mov    %esi,(%eax)
41ae58:	8b 41 2c             	mov    0x2c(%ecx),%eax
41ae5b:	89 30                	mov    %esi,(%eax)
41ae5d:	5e                   	pop    %esi
41ae5e:	c3                   	ret
41ae5f:	55                   	push   %ebp
41ae60:	8b ec                	mov    %esp,%ebp
41ae62:	53                   	push   %ebx
41ae63:	56                   	push   %esi
41ae64:	8b 75 0c             	mov    0xc(%ebp),%esi
41ae67:	57                   	push   %edi
41ae68:	8b f9                	mov    %ecx,%edi
41ae6a:	81 fe ff ff ff 7f    	cmp    $0x7fffffff,%esi
41ae70:	0f 87 a8 00 00 00    	ja     0x41af1e
41ae76:	8b 5d 10             	mov    0x10(%ebp),%ebx
41ae79:	85 f6                	test   %esi,%esi
41ae7b:	0f 84 8f 00 00 00    	je     0x41af10
41ae81:	8b c3                	mov    %ebx,%eax
41ae83:	83 e0 06             	and    $0x6,%eax
41ae86:	3c 06                	cmp    $0x6,%al
41ae88:	0f 84 82 00 00 00    	je     0x41af10
41ae8e:	56                   	push   %esi
41ae8f:	8d 4f 40             	lea    0x40(%edi),%ecx
41ae92:	e8 5e 46 00 00       	call   0x41f4f5
41ae97:	03 f6                	add    %esi,%esi
41ae99:	89 45 10             	mov    %eax,0x10(%ebp)
41ae9c:	56                   	push   %esi
41ae9d:	ff 75 08             	push   0x8(%ebp)
41aea0:	50                   	push   %eax
41aea1:	e8 ba 84 02 00       	call   0x443360
41aea6:	8b 4d 10             	mov    0x10(%ebp),%ecx
41aea9:	8b c3                	mov    %ebx,%eax
41aeab:	03 ce                	add    %esi,%ecx
41aead:	83 c4 0c             	add    $0xc,%esp
41aeb0:	8b 75 10             	mov    0x10(%ebp),%esi
41aeb3:	83 e0 04             	and    $0x4,%eax
41aeb6:	89 4f 38             	mov    %ecx,0x38(%edi)
41aeb9:	89 45 08             	mov    %eax,0x8(%ebp)
41aebc:	75 12                	jne    0x41aed0
41aebe:	8b 47 0c             	mov    0xc(%edi),%eax
41aec1:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41aec4:	89 30                	mov    %esi,(%eax)
41aec6:	8b 47 1c             	mov    0x1c(%edi),%eax
41aec9:	89 30                	mov    %esi,(%eax)
41aecb:	8b 47 2c             	mov    0x2c(%edi),%eax
41aece:	89 08                	mov    %ecx,(%eax)
41aed0:	f6 c3 02             	test   $0x2,%bl
41aed3:	75 36                	jne    0x41af0b
41aed5:	8b 47 10             	mov    0x10(%edi),%eax
41aed8:	f6 c3 18             	test   $0x18,%bl
41aedb:	8b 57 38             	mov    0x38(%edi),%edx
41aede:	8b ce                	mov    %esi,%ecx
41aee0:	0f 45 ca             	cmovne %edx,%ecx
41aee3:	2b d1                	sub    %ecx,%edx
41aee5:	89 30                	mov    %esi,(%eax)
41aee7:	8b 47 20             	mov    0x20(%edi),%eax
41aeea:	d1 fa                	sar    $1,%edx
41aeec:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
41aef0:	89 08                	mov    %ecx,(%eax)
41aef2:	8b 47 30             	mov    0x30(%edi),%eax
41aef5:	89 10                	mov    %edx,(%eax)
41aef7:	74 12                	je     0x41af0b
41aef9:	8b 47 0c             	mov    0xc(%edi),%eax
41aefc:	89 30                	mov    %esi,(%eax)
41aefe:	8b 47 1c             	mov    0x1c(%edi),%eax
41af01:	83 20 00             	andl   $0x0,(%eax)
41af04:	8b 47 2c             	mov    0x2c(%edi),%eax
41af07:	d1 fe                	sar    $1,%esi
41af09:	89 30                	mov    %esi,(%eax)
41af0b:	83 cb 01             	or     $0x1,%ebx
41af0e:	eb 04                	jmp    0x41af14
41af10:	83 67 38 00          	andl   $0x0,0x38(%edi)
41af14:	89 5f 3c             	mov    %ebx,0x3c(%edi)
41af17:	5f                   	pop    %edi
41af18:	5e                   	pop    %esi
41af19:	5b                   	pop    %ebx
41af1a:	5d                   	pop    %ebp
41af1b:	c2 0c 00             	ret    $0xc
41af1e:	e8 63 ad 00 00       	call   0x425c86
41af23:	cc                   	int3
41af24:	55                   	push   %ebp
41af25:	8b ec                	mov    %esp,%ebp
41af27:	83 ec 3c             	sub    $0x3c,%esp
41af2a:	8d 45 f0             	lea    -0x10(%ebp),%eax
41af2d:	53                   	push   %ebx
41af2e:	56                   	push   %esi
41af2f:	57                   	push   %edi
41af30:	50                   	push   %eax
41af31:	8b d9                	mov    %ecx,%ebx
41af33:	e8 02 af 00 00       	call   0x425e3a
41af38:	8b f0                	mov    %eax,%esi
41af3a:	8d 7b 08             	lea    0x8(%ebx),%edi
41af3d:	8d 45 c4             	lea    -0x3c(%ebp),%eax
41af40:	50                   	push   %eax
41af41:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41af42:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41af43:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41af44:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41af45:	e8 56 b0 00 00       	call   0x425fa0
41af4a:	59                   	pop    %ecx
41af4b:	59                   	pop    %ecx
41af4c:	6a 0b                	push   $0xb
41af4e:	59                   	pop    %ecx
41af4f:	8d 7b 18             	lea    0x18(%ebx),%edi
41af52:	8b f0                	mov    %eax,%esi
41af54:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
41af56:	5f                   	pop    %edi
41af57:	5e                   	pop    %esi
41af58:	5b                   	pop    %ebx
41af59:	c9                   	leave
41af5a:	c2 04 00             	ret    $0x4
41af5d:	6a 68                	push   $0x68
41af5f:	b8 cf f7 48 00       	mov    $0x48f7cf,%eax
41af64:	e8 83 4b 02 00       	call   0x43faec
41af69:	8b d9                	mov    %ecx,%ebx
41af6b:	89 5d 8c             	mov    %ebx,-0x74(%ebp)
41af6e:	e8 6a ce 04 00       	call   0x467ddd
41af73:	89 45 90             	mov    %eax,-0x70(%ebp)
41af76:	8d 45 94             	lea    -0x6c(%ebp),%eax
41af79:	50                   	push   %eax
41af7a:	e8 21 b0 00 00       	call   0x425fa0
41af7f:	59                   	pop    %ecx
41af80:	6a 0b                	push   $0xb
41af82:	59                   	pop    %ecx
41af83:	8b f0                	mov    %eax,%esi
41af85:	8d 7d c0             	lea    -0x40(%ebp),%edi
41af88:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
41af8a:	33 f6                	xor    %esi,%esi
41af8c:	89 73 08             	mov    %esi,0x8(%ebx)
41af8f:	89 73 10             	mov    %esi,0x10(%ebx)
41af92:	89 73 14             	mov    %esi,0x14(%ebx)
41af95:	89 75 fc             	mov    %esi,-0x4(%ebp)
41af98:	8d 45 94             	lea    -0x6c(%ebp),%eax
41af9b:	50                   	push   %eax
41af9c:	8b 4d 08             	mov    0x8(%ebp),%ecx
41af9f:	e8 03 eb ff ff       	call   0x419aa7
41afa4:	8b 7d 90             	mov    -0x70(%ebp),%edi
41afa7:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
41afab:	b9 cc 45 49 00       	mov    $0x4945cc,%ecx
41afb0:	75 03                	jne    0x41afb5
41afb2:	8b 4f 08             	mov    0x8(%edi),%ecx
41afb5:	50                   	push   %eax
41afb6:	56                   	push   %esi
41afb7:	51                   	push   %ecx
41afb8:	e8 09 96 fe ff       	call   0x4045c6
41afbd:	89 43 08             	mov    %eax,0x8(%ebx)
41afc0:	8d 45 c0             	lea    -0x40(%ebp),%eax
41afc3:	50                   	push   %eax
41afc4:	56                   	push   %esi
41afc5:	68 80 45 49 00       	push   $0x494580
41afca:	e8 38 96 fe ff       	call   0x404607
41afcf:	89 43 10             	mov    %eax,0x10(%ebx)
41afd2:	8d 45 c0             	lea    -0x40(%ebp),%eax
41afd5:	50                   	push   %eax
41afd6:	56                   	push   %esi
41afd7:	68 88 45 49 00       	push   $0x494588
41afdc:	e8 26 96 fe ff       	call   0x404607
41afe1:	83 c4 24             	add    $0x24,%esp
41afe4:	89 43 14             	mov    %eax,0x14(%ebx)
41afe7:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
41afeb:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
41afef:	74 2b                	je     0x41b01c
41aff1:	8d 45 c0             	lea    -0x40(%ebp),%eax
41aff4:	50                   	push   %eax
41aff5:	56                   	push   %esi
41aff6:	6a 2e                	push   $0x2e
41aff8:	e8 98 95 fe ff       	call   0x404595
41affd:	66 89 43 0c          	mov    %ax,0xc(%ebx)
41b001:	8d 45 c0             	lea    -0x40(%ebp),%eax
41b004:	50                   	push   %eax
41b005:	56                   	push   %esi
41b006:	6a 2c                	push   $0x2c
41b008:	e8 88 95 fe ff       	call   0x404595
41b00d:	83 c4 18             	add    $0x18,%esp
41b010:	66 89 43 0e          	mov    %ax,0xe(%ebx)
41b014:	e8 20 4a 02 00       	call   0x43fa39
41b019:	c2 08 00             	ret    $0x8
41b01c:	8b 47 30             	mov    0x30(%edi),%eax
41b01f:	66 8b 00             	mov    (%eax),%ax
41b022:	66 89 43 0c          	mov    %ax,0xc(%ebx)
41b026:	8b 47 34             	mov    0x34(%edi),%eax
41b029:	66 8b 00             	mov    (%eax),%ax
41b02c:	eb e2                	jmp    0x41b010
41b02e:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
41b031:	e8 f9 1f 00 00       	call   0x41d02f
41b036:	33 f6                	xor    %esi,%esi
41b038:	56                   	push   %esi
41b039:	56                   	push   %esi
41b03a:	e8 83 91 02 00       	call   0x4441c2
41b03f:	cc                   	int3
41b040:	55                   	push   %ebp
41b041:	8b ec                	mov    %esp,%ebp
41b043:	56                   	push   %esi
41b044:	8b f1                	mov    %ecx,%esi
41b046:	57                   	push   %edi
41b047:	33 ff                	xor    %edi,%edi
41b049:	39 7e 08             	cmp    %edi,0x8(%esi)
41b04c:	74 09                	je     0x41b057
41b04e:	e8 89 cc ff ff       	call   0x417cdc
41b053:	8b f8                	mov    %eax,%edi
41b055:	eb 1b                	jmp    0x41b072
41b057:	e8 cf fc ff ff       	call   0x41ad2b
41b05c:	84 c0                	test   %al,%al
41b05e:	74 12                	je     0x41b072
41b060:	8b 45 08             	mov    0x8(%ebp),%eax
41b063:	8d 7e 4c             	lea    0x4c(%esi),%edi
41b066:	89 07                	mov    %eax,(%edi)
41b068:	8b 45 0c             	mov    0xc(%ebp),%eax
41b06b:	c6 46 54 01          	movb   $0x1,0x54(%esi)
41b06f:	89 46 50             	mov    %eax,0x50(%esi)
41b072:	89 7e 48             	mov    %edi,0x48(%esi)
41b075:	5f                   	pop    %edi
41b076:	5e                   	pop    %esi
41b077:	5d                   	pop    %ebp
41b078:	c2 08 00             	ret    $0x8
41b07b:	53                   	push   %ebx
41b07c:	33 db                	xor    %ebx,%ebx
41b07e:	56                   	push   %esi
41b07f:	8b f1                	mov    %ecx,%esi
41b081:	57                   	push   %edi
41b082:	53                   	push   %ebx
41b083:	53                   	push   %ebx
41b084:	89 5e 30             	mov    %ebx,0x30(%esi)
41b087:	89 5e 08             	mov    %ebx,0x8(%esi)
41b08a:	89 5e 10             	mov    %ebx,0x10(%esi)
41b08d:	c7 46 14 01 02 00 00 	movl   $0x201,0x14(%esi)
41b094:	c7 46 18 06 00 00 00 	movl   $0x6,0x18(%esi)
41b09b:	89 5e 1c             	mov    %ebx,0x1c(%esi)
41b09e:	89 5e 20             	mov    %ebx,0x20(%esi)
41b0a1:	89 5e 24             	mov    %ebx,0x24(%esi)
41b0a4:	89 5e 28             	mov    %ebx,0x28(%esi)
41b0a7:	89 5e 2c             	mov    %ebx,0x2c(%esi)
41b0aa:	e8 9a 48 00 00       	call   0x41f949
41b0af:	6a 08                	push   $0x8
41b0b1:	e8 ed 41 02 00       	call   0x43f2a3
41b0b6:	8b f8                	mov    %eax,%edi
41b0b8:	59                   	pop    %ecx
41b0b9:	85 ff                	test   %edi,%edi
41b0bb:	74 0d                	je     0x41b0ca
41b0bd:	6a 01                	push   $0x1
41b0bf:	e8 74 b8 00 00       	call   0x426938
41b0c4:	59                   	pop    %ecx
41b0c5:	89 47 04             	mov    %eax,0x4(%edi)
41b0c8:	eb 02                	jmp    0x41b0cc
41b0ca:	8b fb                	mov    %ebx,%edi
41b0cc:	89 7e 30             	mov    %edi,0x30(%esi)
41b0cf:	5f                   	pop    %edi
41b0d0:	5e                   	pop    %esi
41b0d1:	5b                   	pop    %ebx
41b0d2:	c3                   	ret
41b0d3:	55                   	push   %ebp
41b0d4:	8b ec                	mov    %esp,%ebp
41b0d6:	56                   	push   %esi
41b0d7:	8b f1                	mov    %ecx,%esi
41b0d9:	8b 56 04             	mov    0x4(%esi),%edx
41b0dc:	39 16                	cmp    %edx,(%esi)
41b0de:	77 0c                	ja     0x41b0ec
41b0e0:	8d 42 10             	lea    0x10(%edx),%eax
41b0e3:	50                   	push   %eax
41b0e4:	e8 6b e5 ff ff       	call   0x419654
41b0e9:	8b 56 04             	mov    0x4(%esi),%edx
41b0ec:	8b 4e 08             	mov    0x8(%esi),%ecx
41b0ef:	8a 45 08             	mov    0x8(%ebp),%al
41b0f2:	88 04 0a             	mov    %al,(%edx,%ecx,1)
41b0f5:	ff 46 04             	incl   0x4(%esi)
41b0f8:	5e                   	pop    %esi
41b0f9:	5d                   	pop    %ebp
41b0fa:	c2 04 00             	ret    $0x4
41b0fd:	55                   	push   %ebp
41b0fe:	8b ec                	mov    %esp,%ebp
41b100:	56                   	push   %esi
41b101:	8b f1                	mov    %ecx,%esi
41b103:	8b 56 04             	mov    0x4(%esi),%edx
41b106:	39 16                	cmp    %edx,(%esi)
41b108:	77 0c                	ja     0x41b116
41b10a:	8d 42 10             	lea    0x10(%edx),%eax
41b10d:	50                   	push   %eax
41b10e:	e8 6b e5 ff ff       	call   0x41967e
41b113:	8b 56 04             	mov    0x4(%esi),%edx
41b116:	8b 4e 08             	mov    0x8(%esi),%ecx
41b119:	66 8b 45 08          	mov    0x8(%ebp),%ax
41b11d:	66 89 04 51          	mov    %ax,(%ecx,%edx,2)
41b121:	ff 46 04             	incl   0x4(%esi)
41b124:	5e                   	pop    %esi
41b125:	5d                   	pop    %ebp
41b126:	c2 04 00             	ret    $0x4
41b129:	55                   	push   %ebp
41b12a:	8b ec                	mov    %esp,%ebp
41b12c:	51                   	push   %ecx
41b12d:	51                   	push   %ecx
41b12e:	56                   	push   %esi
41b12f:	ff 75 14             	push   0x14(%ebp)
41b132:	8b f1                	mov    %ecx,%esi
41b134:	ff 75 10             	push   0x10(%ebp)
41b137:	ff 75 0c             	push   0xc(%ebp)
41b13a:	e8 40 00 00 00       	call   0x41b17f
41b13f:	8b 0e                	mov    (%esi),%ecx
41b141:	8b 75 08             	mov    0x8(%ebp),%esi
41b144:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41b148:	50                   	push   %eax
41b149:	89 4d f8             	mov    %ecx,-0x8(%ebp)
41b14c:	8d 4d f8             	lea    -0x8(%ebp),%ecx
41b14f:	56                   	push   %esi
41b150:	e8 9b 4e ff ff       	call   0x40fff0
41b155:	ff 75 14             	push   0x14(%ebp)
41b158:	8d 45 f8             	lea    -0x8(%ebp),%eax
41b15b:	8b ce                	mov    %esi,%ecx
41b15d:	50                   	push   %eax
41b15e:	e8 8d 4e ff ff       	call   0x40fff0
41b163:	ff 75 18             	push   0x18(%ebp)