43cf30:	8b cf                	mov    %edi,%ecx
43cf32:	ff d6                	call   *%esi
43cf34:	5e                   	pop    %esi
43cf35:	5f                   	pop    %edi
43cf36:	5d                   	pop    %ebp
43cf37:	c2 04 00             	ret    $0x4
43cf3a:	8b ff                	mov    %edi,%edi
43cf3c:	55                   	push   %ebp
43cf3d:	8b ec                	mov    %esp,%ebp
43cf3f:	57                   	push   %edi
43cf40:	8b 79 14             	mov    0x14(%ecx),%edi
43cf43:	85 ff                	test   %edi,%edi
43cf45:	74 19                	je     0x43cf60
43cf47:	8b 07                	mov    (%edi),%eax
43cf49:	56                   	push   %esi
43cf4a:	ff 75 08             	push   0x8(%ebp)
43cf4d:	8b b0 8c 00 00 00    	mov    0x8c(%eax),%esi
43cf53:	8b ce                	mov    %esi,%ecx
43cf55:	ff 15 2c 81 4a 00    	call   *0x4a812c
43cf5b:	8b cf                	mov    %edi,%ecx
43cf5d:	ff d6                	call   *%esi
43cf5f:	5e                   	pop    %esi
43cf60:	5f                   	pop    %edi
43cf61:	5d                   	pop    %ebp
43cf62:	c2 04 00             	ret    $0x4
43cf65:	8b ff                	mov    %edi,%edi
43cf67:	57                   	push   %edi
43cf68:	8b f9                	mov    %ecx,%edi
43cf6a:	8b 47 04             	mov    0x4(%edi),%eax
43cf6d:	8b 08                	mov    (%eax),%ecx
43cf6f:	89 00                	mov    %eax,(%eax)
43cf71:	8b 47 04             	mov    0x4(%edi),%eax
43cf74:	89 40 04             	mov    %eax,0x4(%eax)
43cf77:	83 67 08 00          	andl   $0x0,0x8(%edi)
43cf7b:	3b 4f 04             	cmp    0x4(%edi),%ecx
43cf7e:	74 13                	je     0x43cf93
43cf80:	56                   	push   %esi
43cf81:	8b 31                	mov    (%ecx),%esi
43cf83:	51                   	push   %ecx
43cf84:	ff 15 10 74 4a 00    	call   *0x4a7410
43cf8a:	59                   	pop    %ecx
43cf8b:	8b ce                	mov    %esi,%ecx
43cf8d:	3b 77 04             	cmp    0x4(%edi),%esi
43cf90:	75 ef                	jne    0x43cf81
43cf92:	5e                   	pop    %esi
43cf93:	5f                   	pop    %edi
43cf94:	c3                   	ret
43cf95:	cc                   	int3
43cf96:	cc                   	int3
43cf97:	cc                   	int3
43cf98:	cc                   	int3
43cf99:	cc                   	int3
43cf9a:	cc                   	int3
43cf9b:	cc                   	int3
43cf9c:	cc                   	int3
43cf9d:	cc                   	int3
43cf9e:	cc                   	int3
43cf9f:	cc                   	int3
43cfa0:	8b ff                	mov    %edi,%edi
43cfa2:	55                   	push   %ebp
43cfa3:	8b ec                	mov    %esp,%ebp
43cfa5:	ff 71 08             	push   0x8(%ecx)
43cfa8:	8b 4d 08             	mov    0x8(%ebp),%ecx
43cfab:	e8 b5 01 00 00       	call   0x43d165
43cfb0:	5d                   	pop    %ebp
43cfb1:	c2 04 00             	ret    $0x4
43cfb4:	cc                   	int3
43cfb5:	cc                   	int3
43cfb6:	cc                   	int3
43cfb7:	cc                   	int3
43cfb8:	cc                   	int3
43cfb9:	cc                   	int3
43cfba:	cc                   	int3
43cfbb:	cc                   	int3
43cfbc:	cc                   	int3
43cfbd:	cc                   	int3
43cfbe:	cc                   	int3
43cfbf:	cc                   	int3
43cfc0:	8b ff                	mov    %edi,%edi
43cfc2:	55                   	push   %ebp
43cfc3:	8b ec                	mov    %esp,%ebp
43cfc5:	8b 41 08             	mov    0x8(%ecx),%eax
43cfc8:	8b 4d 08             	mov    0x8(%ebp),%ecx
43cfcb:	ff 30                	push   (%eax)
43cfcd:	e8 b6 43 fe ff       	call   0x421388
43cfd2:	5d                   	pop    %ebp
43cfd3:	c2 04 00             	ret    $0x4
43cfd6:	cc                   	int3
43cfd7:	cc                   	int3
43cfd8:	cc                   	int3
43cfd9:	cc                   	int3
43cfda:	cc                   	int3
43cfdb:	cc                   	int3
43cfdc:	cc                   	int3
43cfdd:	cc                   	int3
43cfde:	cc                   	int3
43cfdf:	cc                   	int3
43cfe0:	8b ff                	mov    %edi,%edi
43cfe2:	55                   	push   %ebp
43cfe3:	8b ec                	mov    %esp,%ebp
43cfe5:	51                   	push   %ecx
43cfe6:	56                   	push   %esi
43cfe7:	6a 0c                	push   $0xc
43cfe9:	8b f1                	mov    %ecx,%esi
43cfeb:	ff 15 14 74 4a 00    	call   *0x4a7414
43cff1:	8b d0                	mov    %eax,%edx
43cff3:	89 55 fc             	mov    %edx,-0x4(%ebp)
43cff6:	59                   	pop    %ecx
43cff7:	85 d2                	test   %edx,%edx
43cff9:	74 15                	je     0x43d010
43cffb:	8b 46 08             	mov    0x8(%esi),%eax
43cffe:	c7 42 04 03 00 00 00 	movl   $0x3,0x4(%edx)
43d005:	c7 02 50 2a 40 00    	movl   $0x402a50,(%edx)
43d00b:	89 42 08             	mov    %eax,0x8(%edx)
43d00e:	eb 02                	jmp    0x43d012
43d010:	33 d2                	xor    %edx,%edx
43d012:	8b c2                	mov    %edx,%eax
43d014:	5e                   	pop    %esi
43d015:	c9                   	leave
43d016:	c3                   	ret
43d017:	cc                   	int3
43d018:	cc                   	int3
43d019:	cc                   	int3
43d01a:	cc                   	int3
43d01b:	cc                   	int3
43d01c:	cc                   	int3
43d01d:	cc                   	int3
43d01e:	cc                   	int3
43d01f:	cc                   	int3
43d020:	8b ff                	mov    %edi,%edi
43d022:	55                   	push   %ebp
43d023:	8b ec                	mov    %esp,%ebp
43d025:	53                   	push   %ebx
43d026:	56                   	push   %esi
43d027:	57                   	push   %edi
43d028:	33 db                	xor    %ebx,%ebx
43d02a:	bf bc 08 4a 00       	mov    $0x4a08bc,%edi
43d02f:	53                   	push   %ebx
43d030:	68 fc 17 4a 00       	push   $0x4a17fc
43d035:	57                   	push   %edi
43d036:	53                   	push   %ebx
43d037:	ff 75 08             	push   0x8(%ebp)
43d03a:	8b f1                	mov    %ecx,%esi
43d03c:	e8 9d 3f 05 00       	call   0x490fde
43d041:	8b c8                	mov    %eax,%ecx
43d043:	83 c4 14             	add    $0x14,%esp
43d046:	85 c9                	test   %ecx,%ecx
43d048:	74 0c                	je     0x43d056
43d04a:	8b 46 08             	mov    0x8(%esi),%eax
43d04d:	8b 49 08             	mov    0x8(%ecx),%ecx
43d050:	8b 00                	mov    (%eax),%eax
43d052:	89 01                	mov    %eax,(%ecx)
43d054:	eb 21                	jmp    0x43d077
43d056:	53                   	push   %ebx
43d057:	68 d4 17 4a 00       	push   $0x4a17d4
43d05c:	57                   	push   %edi
43d05d:	53                   	push   %ebx
43d05e:	ff 75 08             	push   0x8(%ebp)
43d061:	e8 78 3f 05 00       	call   0x490fde
43d066:	8b c8                	mov    %eax,%ecx
43d068:	83 c4 14             	add    $0x14,%esp
43d06b:	85 c9                	test   %ecx,%ecx
43d06d:	74 0a                	je     0x43d079
43d06f:	8b 46 08             	mov    0x8(%esi),%eax
43d072:	8b 00                	mov    (%eax),%eax
43d074:	89 41 08             	mov    %eax,0x8(%ecx)
43d077:	b3 01                	mov    $0x1,%bl
43d079:	5f                   	pop    %edi
43d07a:	5e                   	pop    %esi
43d07b:	8a c3                	mov    %bl,%al
43d07d:	5b                   	pop    %ebx
43d07e:	5d                   	pop    %ebp
43d07f:	c2 04 00             	ret    $0x4
43d082:	cc                   	int3
43d083:	cc                   	int3
43d084:	cc                   	int3
43d085:	cc                   	int3
43d086:	cc                   	int3
43d087:	cc                   	int3
43d088:	cc                   	int3
43d089:	cc                   	int3
43d08a:	cc                   	int3
43d08b:	cc                   	int3
43d08c:	cc                   	int3
43d08d:	cc                   	int3
43d08e:	cc                   	int3
43d08f:	cc                   	int3
43d090:	8b ff                	mov    %edi,%edi
43d092:	55                   	push   %ebp
43d093:	8b ec                	mov    %esp,%ebp
43d095:	53                   	push   %ebx
43d096:	56                   	push   %esi
43d097:	57                   	push   %edi
43d098:	33 db                	xor    %ebx,%ebx
43d09a:	bf bc 08 4a 00       	mov    $0x4a08bc,%edi
43d09f:	53                   	push   %ebx
43d0a0:	68 fc 17 4a 00       	push   $0x4a17fc
43d0a5:	57                   	push   %edi
43d0a6:	53                   	push   %ebx
43d0a7:	ff 75 08             	push   0x8(%ebp)
43d0aa:	8b f1                	mov    %ecx,%esi
43d0ac:	e8 2d 3f 05 00       	call   0x490fde
43d0b1:	83 c4 14             	add    $0x14,%esp
43d0b4:	85 c0                	test   %eax,%eax
43d0b6:	74 07                	je     0x43d0bf
43d0b8:	8b 40 08             	mov    0x8(%eax),%eax
43d0bb:	8b 00                	mov    (%eax),%eax
43d0bd:	eb 1a                	jmp    0x43d0d9
43d0bf:	53                   	push   %ebx
43d0c0:	68 d4 17 4a 00       	push   $0x4a17d4
43d0c5:	57                   	push   %edi
43d0c6:	53                   	push   %ebx
43d0c7:	ff 75 08             	push   0x8(%ebp)
43d0ca:	e8 0f 3f 05 00       	call   0x490fde
43d0cf:	83 c4 14             	add    $0x14,%esp
43d0d2:	85 c0                	test   %eax,%eax
43d0d4:	74 0a                	je     0x43d0e0
43d0d6:	8b 40 08             	mov    0x8(%eax),%eax
43d0d9:	8b 4e 08             	mov    0x8(%esi),%ecx
43d0dc:	b3 01                	mov    $0x1,%bl
43d0de:	89 01                	mov    %eax,(%ecx)
43d0e0:	5f                   	pop    %edi
43d0e1:	5e                   	pop    %esi
43d0e2:	8a c3                	mov    %bl,%al
43d0e4:	5b                   	pop    %ebx
43d0e5:	5d                   	pop    %ebp
43d0e6:	c2 04 00             	ret    $0x4
43d0e9:	cc                   	int3
43d0ea:	cc                   	int3
43d0eb:	cc                   	int3
43d0ec:	cc                   	int3
43d0ed:	cc                   	int3
43d0ee:	cc                   	int3
43d0ef:	cc                   	int3
43d0f0:	8b ff                	mov    %edi,%edi
43d0f2:	55                   	push   %ebp
43d0f3:	8b ec                	mov    %esp,%ebp
43d0f5:	8d 41 08             	lea    0x8(%ecx),%eax
43d0f8:	8b 4d 08             	mov    0x8(%ebp),%ecx
43d0fb:	50                   	push   %eax
43d0fc:	e8 64 00 00 00       	call   0x43d165
43d101:	5d                   	pop    %ebp
43d102:	c2 04 00             	ret    $0x4
43d105:	cc                   	int3
43d106:	cc                   	int3
43d107:	cc                   	int3
43d108:	cc                   	int3
43d109:	cc                   	int3
43d10a:	cc                   	int3
43d10b:	cc                   	int3
43d10c:	cc                   	int3
43d10d:	cc                   	int3
43d10e:	cc                   	int3
43d10f:	cc                   	int3
43d110:	8b ff                	mov    %edi,%edi
43d112:	55                   	push   %ebp
43d113:	8b ec                	mov    %esp,%ebp
43d115:	51                   	push   %ecx
43d116:	56                   	push   %esi
43d117:	6a 0c                	push   $0xc
43d119:	8b f1                	mov    %ecx,%esi
43d11b:	ff 15 14 74 4a 00    	call   *0x4a7414
43d121:	8b d0                	mov    %eax,%edx
43d123:	89 55 fc             	mov    %edx,-0x4(%ebp)
43d126:	59                   	pop    %ecx
43d127:	85 d2                	test   %edx,%edx
43d129:	74 15                	je     0x43d140
43d12b:	8b 46 08             	mov    0x8(%esi),%eax
43d12e:	c7 42 04 03 00 00 00 	movl   $0x3,0x4(%edx)
43d135:	c7 02 34 2a 40 00    	movl   $0x402a34,(%edx)
43d13b:	89 42 08             	mov    %eax,0x8(%edx)
43d13e:	eb 02                	jmp    0x43d142
43d140:	33 d2                	xor    %edx,%edx
43d142:	8b c2                	mov    %edx,%eax
43d144:	5e                   	pop    %esi
43d145:	c9                   	leave
43d146:	c3                   	ret
43d147:	6a 20                	push   $0x20
43d149:	ff 15 14 74 4a 00    	call   *0x4a7414
43d14f:	59                   	pop    %ecx
43d150:	89 00                	mov    %eax,(%eax)
43d152:	89 40 04             	mov    %eax,0x4(%eax)
43d155:	c3                   	ret
43d156:	6a 10                	push   $0x10
43d158:	ff 15 14 74 4a 00    	call   *0x4a7414
43d15e:	59                   	pop    %ecx
43d15f:	89 00                	mov    %eax,(%eax)
43d161:	89 40 04             	mov    %eax,0x4(%eax)
43d164:	c3                   	ret
43d165:	6a 2c                	push   $0x2c
43d167:	b8 8b 2c 49 00       	mov    $0x492c8b,%eax
43d16c:	e8 cb 33 05 00       	call   0x49053c
43d171:	8b f9                	mov    %ecx,%edi
43d173:	8b 45 08             	mov    0x8(%ebp),%eax
43d176:	33 db                	xor    %ebx,%ebx
43d178:	51                   	push   %ecx
43d179:	57                   	push   %edi
43d17a:	8d 4d d0             	lea    -0x30(%ebp),%ecx
43d17d:	89 7d e8             	mov    %edi,-0x18(%ebp)
43d180:	89 45 dc             	mov    %eax,-0x24(%ebp)
43d183:	89 5d ec             	mov    %ebx,-0x14(%ebp)
43d186:	e8 66 79 fe ff       	call   0x424af1
43d18b:	89 5d fc             	mov    %ebx,-0x4(%ebp)
43d18e:	38 5d d4             	cmp    %bl,-0x2c(%ebp)
43d191:	0f 84 a6 00 00 00    	je     0x43d23d
43d197:	8b 07                	mov    (%edi),%eax
43d199:	8b 48 04             	mov    0x4(%eax),%ecx
43d19c:	8b 4c 39 24          	mov    0x24(%ecx,%edi,1),%ecx
43d1a0:	8b 09                	mov    (%ecx),%ecx
43d1a2:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
43d1a5:	e8 fc e6 fd ff       	call   0x41b8a6
43d1aa:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43d1ad:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
43d1b1:	e8 17 70 fe ff       	call   0x4241cd
43d1b6:	8b f0                	mov    %eax,%esi
43d1b8:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43d1bb:	89 75 d8             	mov    %esi,-0x28(%ebp)
43d1be:	e8 b0 ea fd ff       	call   0x41bc73
43d1c3:	ff 75 dc             	push   -0x24(%ebp)
43d1c6:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
43d1ca:	8d 4d ec             	lea    -0x14(%ebp),%ecx
43d1cd:	8b 07                	mov    (%edi),%eax
43d1cf:	8b 36                	mov    (%esi),%esi
43d1d1:	51                   	push   %ecx
43d1d2:	c6 45 e4 01          	movb   $0x1,-0x1c(%ebp)
43d1d6:	8b 40 04             	mov    0x4(%eax),%eax
43d1d9:	8b 4e 24             	mov    0x24(%esi),%ecx
43d1dc:	03 c7                	add    %edi,%eax
43d1de:	50                   	push   %eax
43d1df:	ff 75 e4             	push   -0x1c(%ebp)
43d1e2:	39 58 28             	cmp    %ebx,0x28(%eax)
43d1e5:	53                   	push   %ebx
43d1e6:	0f 94 45 cc          	sete   -0x34(%ebp)
43d1ea:	ff 75 cc             	push   -0x34(%ebp)
43d1ed:	ff 70 28             	push   0x28(%eax)
43d1f0:	8d 45 c8             	lea    -0x38(%ebp),%eax
43d1f3:	50                   	push   %eax
43d1f4:	ff 15 2c 81 4a 00    	call   *0x4a812c
43d1fa:	8b 4d d8             	mov    -0x28(%ebp),%ecx
43d1fd:	ff 56 24             	call   *0x24(%esi)
43d200:	eb 38                	jmp    0x43d23a
43d202:	8b 4d e8             	mov    -0x18(%ebp),%ecx
43d205:	8b 01                	mov    (%ecx),%eax
43d207:	8b 50 04             	mov    0x4(%eax),%edx
43d20a:	03 d1                	add    %ecx,%edx
43d20c:	8b 42 08             	mov    0x8(%edx),%eax
43d20f:	83 c8 04             	or     $0x4,%eax
43d212:	83 7a 28 00          	cmpl   $0x0,0x28(%edx)
43d216:	75 03                	jne    0x43d21b
43d218:	83 c8 04             	or     $0x4,%eax