7ade87:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
7ade8e:	5e                   	pop    %esi
7ade8f:	c3                   	ret
7ade90:	cc                   	int3
7ade91:	cc                   	int3
7ade92:	cc                   	int3
7ade93:	cc                   	int3
7ade94:	cc                   	int3
7ade95:	cc                   	int3
7ade96:	cc                   	int3
7ade97:	cc                   	int3
7ade98:	cc                   	int3
7ade99:	cc                   	int3
7ade9a:	cc                   	int3
7ade9b:	cc                   	int3
7ade9c:	cc                   	int3
7ade9d:	cc                   	int3
7ade9e:	cc                   	int3
7ade9f:	cc                   	int3
7adea0:	56                   	push   %esi
7adea1:	8b f1                	mov    %ecx,%esi
7adea3:	8b 0e                	mov    (%esi),%ecx
7adea5:	85 c9                	test   %ecx,%ecx
7adea7:	74 25                	je     0x7adece
7adea9:	8b 46 08             	mov    0x8(%esi),%eax
7adeac:	2b c1                	sub    %ecx,%eax
7adeae:	c1 f8 02             	sar    $0x2,%eax
7adeb1:	50                   	push   %eax
7adeb2:	51                   	push   %ecx
7adeb3:	8b ce                	mov    %esi,%ecx
7adeb5:	e8 1e 53 c6 ff       	call   0x4131d8
7adeba:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
7adec0:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
7adec7:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
7adece:	5e                   	pop    %esi
7adecf:	c3                   	ret
7aded0:	cc                   	int3
7aded1:	cc                   	int3
7aded2:	cc                   	int3
7aded3:	cc                   	int3
7aded4:	cc                   	int3
7aded5:	cc                   	int3
7aded6:	cc                   	int3
7aded7:	cc                   	int3
7aded8:	cc                   	int3
7aded9:	cc                   	int3
7adeda:	cc                   	int3
7adedb:	cc                   	int3
7adedc:	cc                   	int3
7adedd:	cc                   	int3
7adede:	cc                   	int3
7adedf:	cc                   	int3
7adee0:	c3                   	ret
7adee1:	cc                   	int3
7adee2:	cc                   	int3
7adee3:	cc                   	int3
7adee4:	cc                   	int3
7adee5:	cc                   	int3
7adee6:	cc                   	int3
7adee7:	cc                   	int3
7adee8:	cc                   	int3
7adee9:	cc                   	int3
7adeea:	cc                   	int3
7adeeb:	cc                   	int3
7adeec:	cc                   	int3
7adeed:	cc                   	int3
7adeee:	cc                   	int3
7adeef:	cc                   	int3
7adef0:	51                   	push   %ecx
7adef1:	56                   	push   %esi
7adef2:	8b f1                	mov    %ecx,%esi
7adef4:	89 74 24 04          	mov    %esi,0x4(%esp)
7adef8:	c7 06 34 7a c2 00    	movl   $0xc27a34,(%esi)
7adefe:	e8 14 3b c7 ff       	call   0x421a17
7adf03:	8b 76 08             	mov    0x8(%esi),%esi
7adf06:	85 f6                	test   %esi,%esi
7adf08:	74 28                	je     0x7adf32
7adf0a:	57                   	push   %edi
7adf0b:	83 cf ff             	or     $0xffffffff,%edi
7adf0e:	8b c7                	mov    %edi,%eax
7adf10:	f0 0f c1 46 04       	lock xadd %eax,0x4(%esi)
7adf15:	75 1a                	jne    0x7adf31
7adf17:	8b 06                	mov    (%esi),%eax
7adf19:	8b ce                	mov    %esi,%ecx
7adf1b:	ff 10                	call   *(%eax)
7adf1d:	f0 0f c1 7e 08       	lock xadd %edi,0x8(%esi)
7adf22:	4f                   	dec    %edi
7adf23:	75 0c                	jne    0x7adf31
7adf25:	8b 06                	mov    (%esi),%eax
7adf27:	8b ce                	mov    %esi,%ecx
7adf29:	5f                   	pop    %edi
7adf2a:	5e                   	pop    %esi
7adf2b:	83 c4 04             	add    $0x4,%esp
7adf2e:	ff 60 04             	jmp    *0x4(%eax)
7adf31:	5f                   	pop    %edi
7adf32:	5e                   	pop    %esi
7adf33:	59                   	pop    %ecx
7adf34:	c3                   	ret
7adf35:	cc                   	int3
7adf36:	cc                   	int3
7adf37:	cc                   	int3
7adf38:	cc                   	int3
7adf39:	cc                   	int3
7adf3a:	cc                   	int3
7adf3b:	cc                   	int3
7adf3c:	cc                   	int3
7adf3d:	cc                   	int3
7adf3e:	cc                   	int3
7adf3f:	cc                   	int3
7adf40:	cc                   	int3
7adf41:	cc                   	int3
7adf42:	cc                   	int3
7adf43:	cc                   	int3
7adf44:	cc                   	int3
7adf45:	cc                   	int3
7adf46:	cc                   	int3
7adf47:	cc                   	int3
7adf48:	cc                   	int3
7adf49:	cc                   	int3
7adf4a:	cc                   	int3
7adf4b:	cc                   	int3
7adf4c:	cc                   	int3
7adf4d:	cc                   	int3
7adf4e:	cc                   	int3
7adf4f:	cc                   	int3
7adf50:	56                   	push   %esi
7adf51:	8b f1                	mov    %ecx,%esi
7adf53:	57                   	push   %edi
7adf54:	8b 4e 1c             	mov    0x1c(%esi),%ecx
7adf57:	85 c9                	test   %ecx,%ecx
7adf59:	74 27                	je     0x7adf82
7adf5b:	8b 46 24             	mov    0x24(%esi),%eax
7adf5e:	2b c1                	sub    %ecx,%eax
7adf60:	c1 f8 02             	sar    $0x2,%eax
7adf63:	50                   	push   %eax
7adf64:	51                   	push   %ecx
7adf65:	8d 4e 1c             	lea    0x1c(%esi),%ecx
7adf68:	e8 71 69 c7 ff       	call   0x4248de
7adf6d:	c7 46 1c 00 00 00 00 	movl   $0x0,0x1c(%esi)
7adf74:	c7 46 20 00 00 00 00 	movl   $0x0,0x20(%esi)
7adf7b:	c7 46 24 00 00 00 00 	movl   $0x0,0x24(%esi)
7adf82:	8b 46 14             	mov    0x14(%esi),%eax
7adf85:	83 f8 10             	cmp    $0x10,%eax
7adf88:	72 0b                	jb     0x7adf95
7adf8a:	40                   	inc    %eax
7adf8b:	8b ce                	mov    %esi,%ecx
7adf8d:	50                   	push   %eax
7adf8e:	ff 36                	push   (%esi)
7adf90:	e8 87 66 c8 ff       	call   0x43461c
7adf95:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
7adf9c:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
7adfa0:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
7adfa7:	72 08                	jb     0x7adfb1
7adfa9:	8b 06                	mov    (%esi),%eax
7adfab:	5f                   	pop    %edi
7adfac:	5e                   	pop    %esi
7adfad:	c6 00 00             	movb   $0x0,(%eax)
7adfb0:	c3                   	ret
7adfb1:	5f                   	pop    %edi
7adfb2:	c6 06 00             	movb   $0x0,(%esi)
7adfb5:	5e                   	pop    %esi
7adfb6:	c3                   	ret
7adfb7:	cc                   	int3
7adfb8:	cc                   	int3
7adfb9:	cc                   	int3
7adfba:	cc                   	int3
7adfbb:	cc                   	int3
7adfbc:	cc                   	int3
7adfbd:	cc                   	int3
7adfbe:	cc                   	int3
7adfbf:	cc                   	int3
7adfc0:	cc                   	int3
7adfc1:	cc                   	int3
7adfc2:	cc                   	int3
7adfc3:	cc                   	int3
7adfc4:	cc                   	int3
7adfc5:	cc                   	int3
7adfc6:	cc                   	int3
7adfc7:	cc                   	int3
7adfc8:	cc                   	int3
7adfc9:	cc                   	int3
7adfca:	cc                   	int3
7adfcb:	cc                   	int3
7adfcc:	cc                   	int3
7adfcd:	cc                   	int3
7adfce:	cc                   	int3
7adfcf:	cc                   	int3
7adfd0:	8b 44 24 04          	mov    0x4(%esp),%eax
7adfd4:	53                   	push   %ebx
7adfd5:	56                   	push   %esi
7adfd6:	57                   	push   %edi
7adfd7:	8b 30                	mov    (%eax),%esi
7adfd9:	8b f9                	mov    %ecx,%edi
7adfdb:	8b 50 04             	mov    0x4(%eax),%edx
7adfde:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
7adfe4:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
7adfeb:	8b 5f 04             	mov    0x4(%edi),%ebx
7adfee:	89 57 04             	mov    %edx,0x4(%edi)
7adff1:	89 37                	mov    %esi,(%edi)
7adff3:	85 db                	test   %ebx,%ebx
7adff5:	74 21                	je     0x7ae018
7adff7:	83 ce ff             	or     $0xffffffff,%esi
7adffa:	8b c6                	mov    %esi,%eax
7adffc:	f0 0f c1 43 04       	lock xadd %eax,0x4(%ebx)
7ae001:	75 15                	jne    0x7ae018
7ae003:	8b 03                	mov    (%ebx),%eax
7ae005:	8b cb                	mov    %ebx,%ecx
7ae007:	ff 10                	call   *(%eax)
7ae009:	f0 0f c1 73 08       	lock xadd %esi,0x8(%ebx)
7ae00e:	4e                   	dec    %esi
7ae00f:	75 07                	jne    0x7ae018
7ae011:	8b 03                	mov    (%ebx),%eax
7ae013:	8b cb                	mov    %ebx,%ecx
7ae015:	ff 50 04             	call   *0x4(%eax)
7ae018:	8b c7                	mov    %edi,%eax
7ae01a:	5f                   	pop    %edi
7ae01b:	5e                   	pop    %esi
7ae01c:	5b                   	pop    %ebx
7ae01d:	c2 04 00             	ret    $0x4
7ae020:	cc                   	int3
7ae021:	cc                   	int3
7ae022:	cc                   	int3
7ae023:	cc                   	int3
7ae024:	cc                   	int3
7ae025:	cc                   	int3
7ae026:	cc                   	int3
7ae027:	cc                   	int3
7ae028:	cc                   	int3
7ae029:	cc                   	int3
7ae02a:	cc                   	int3
7ae02b:	cc                   	int3
7ae02c:	cc                   	int3
7ae02d:	cc                   	int3
7ae02e:	cc                   	int3
7ae02f:	cc                   	int3
7ae030:	cc                   	int3
7ae031:	cc                   	int3
7ae032:	cc                   	int3
7ae033:	cc                   	int3
7ae034:	cc                   	int3
7ae035:	cc                   	int3
7ae036:	cc                   	int3
7ae037:	cc                   	int3
7ae038:	cc                   	int3
7ae039:	cc                   	int3
7ae03a:	cc                   	int3
7ae03b:	cc                   	int3
7ae03c:	cc                   	int3
7ae03d:	cc                   	int3
7ae03e:	cc                   	int3
7ae03f:	cc                   	int3
7ae040:	8b 44 24 04          	mov    0x4(%esp),%eax
7ae044:	56                   	push   %esi
7ae045:	8b f1                	mov    %ecx,%esi
7ae047:	57                   	push   %edi
7ae048:	8b 48 04             	mov    0x4(%eax),%ecx
7ae04b:	8b 00                	mov    (%eax),%eax
7ae04d:	85 c9                	test   %ecx,%ecx
7ae04f:	74 04                	je     0x7ae055
7ae051:	f0 ff 41 04          	lock incl 0x4(%ecx)
7ae055:	8b 7e 04             	mov    0x4(%esi),%edi
7ae058:	89 4e 04             	mov    %ecx,0x4(%esi)
7ae05b:	89 06                	mov    %eax,(%esi)
7ae05d:	85 ff                	test   %edi,%edi
7ae05f:	74 2a                	je     0x7ae08b
7ae061:	53                   	push   %ebx
7ae062:	83 cb ff             	or     $0xffffffff,%ebx
7ae065:	8b c3                	mov    %ebx,%eax
7ae067:	f0 0f c1 47 04       	lock xadd %eax,0x4(%edi)
7ae06c:	75 15                	jne    0x7ae083
7ae06e:	8b 07                	mov    (%edi),%eax
7ae070:	8b cf                	mov    %edi,%ecx
7ae072:	ff 10                	call   *(%eax)
7ae074:	f0 0f c1 5f 08       	lock xadd %ebx,0x8(%edi)
7ae079:	4b                   	dec    %ebx
7ae07a:	75 07                	jne    0x7ae083
7ae07c:	8b 07                	mov    (%edi),%eax
7ae07e:	8b cf                	mov    %edi,%ecx
7ae080:	ff 50 04             	call   *0x4(%eax)
7ae083:	5b                   	pop    %ebx
7ae084:	5f                   	pop    %edi
7ae085:	8b c6                	mov    %esi,%eax
7ae087:	5e                   	pop    %esi
7ae088:	c2 04 00             	ret    $0x4
7ae08b:	5f                   	pop    %edi
7ae08c:	8b c6                	mov    %esi,%eax
7ae08e:	5e                   	pop    %esi
7ae08f:	c2 04 00             	ret    $0x4
7ae092:	cc                   	int3
7ae093:	cc                   	int3
7ae094:	cc                   	int3
7ae095:	cc                   	int3
7ae096:	cc                   	int3
7ae097:	cc                   	int3
7ae098:	cc                   	int3
7ae099:	cc                   	int3
7ae09a:	cc                   	int3
7ae09b:	cc                   	int3
7ae09c:	cc                   	int3
7ae09d:	cc                   	int3
7ae09e:	cc                   	int3
7ae09f:	cc                   	int3
7ae0a0:	cc                   	int3
7ae0a1:	cc                   	int3
7ae0a2:	cc                   	int3
7ae0a3:	cc                   	int3
7ae0a4:	cc                   	int3
7ae0a5:	cc                   	int3
7ae0a6:	cc                   	int3
7ae0a7:	cc                   	int3
7ae0a8:	cc                   	int3
7ae0a9:	cc                   	int3
7ae0aa:	cc                   	int3
7ae0ab:	cc                   	int3
7ae0ac:	cc                   	int3
7ae0ad:	cc                   	int3
7ae0ae:	cc                   	int3
7ae0af:	cc                   	int3
7ae0b0:	8b 44 24 04          	mov    0x4(%esp),%eax
7ae0b4:	8b 09                	mov    (%ecx),%ecx
7ae0b6:	3b 08                	cmp    (%eax),%ecx
7ae0b8:	0f 94 c0             	sete   %al
7ae0bb:	c2 04 00             	ret    $0x4
7ae0be:	cc                   	int3
7ae0bf:	cc                   	int3
7ae0c0:	cc                   	int3
7ae0c1:	cc                   	int3
7ae0c2:	cc                   	int3
7ae0c3:	cc                   	int3
7ae0c4:	cc                   	int3
7ae0c5:	cc                   	int3
7ae0c6:	cc                   	int3
7ae0c7:	cc                   	int3
7ae0c8:	cc                   	int3
7ae0c9:	cc                   	int3
7ae0ca:	cc                   	int3
7ae0cb:	cc                   	int3
7ae0cc:	cc                   	int3
7ae0cd:	cc                   	int3
7ae0ce:	cc                   	int3
7ae0cf:	cc                   	int3
7ae0d0:	8b 44 24 04          	mov    0x4(%esp),%eax
7ae0d4:	8b 09                	mov    (%ecx),%ecx
7ae0d6:	3b 08                	cmp    (%eax),%ecx
7ae0d8:	0f 94 c0             	sete   %al
7ae0db:	c2 04 00             	ret    $0x4
7ae0de:	cc                   	int3
7ae0df:	cc                   	int3
7ae0e0:	cc                   	int3
7ae0e1:	cc                   	int3