412caa:	85 c9                	test   %ecx,%ecx
412cac:	0f 84 12 87 01 00    	je     0x42b3c4
412cb2:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
412cb6:	c7 01 d8 13 40 00    	movl   $0x4013d8,(%ecx)
412cbc:	c7 41 04 00 00 00 00 	movl   $0x0,0x4(%ecx)
412cc3:	c7 41 08 00 00 00 00 	movl   $0x0,0x8(%ecx)
412cca:	c7 41 0c 00 00 00 00 	movl   $0x0,0xc(%ecx)
412cd1:	c7 41 10 00 00 00 00 	movl   $0x0,0x10(%ecx)
412cd8:	89 79 14             	mov    %edi,0x14(%ecx)
412cdb:	f0 ff 05 74 0a 45 00 	lock incl 0x450a74
412ce2:	f0 ff 05 7c 0b 45 00 	lock incl 0x450b7c
412ce9:	8b 51 14             	mov    0x14(%ecx),%edx
412cec:	85 d2                	test   %edx,%edx
412cee:	74 13                	je     0x412d03
412cf0:	8b 02                	mov    (%edx),%eax
412cf2:	52                   	push   %edx
412cf3:	8b 70 04             	mov    0x4(%eax),%esi
412cf6:	8b ce                	mov    %esi,%ecx
412cf8:	ff 15 c4 12 45 00    	call   *0x4512c4
412cfe:	ff d6                	call   *%esi
412d00:	8b 4d dc             	mov    -0x24(%ebp),%ecx
412d03:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
412d0a:	85 c9                	test   %ecx,%ecx
412d0c:	0f 84 59 87 01 00    	je     0x42b46b
412d12:	8b 01                	mov    (%ecx),%eax
412d14:	51                   	push   %ecx
412d15:	8b 70 04             	mov    0x4(%eax),%esi
412d18:	8b ce                	mov    %esi,%ecx
412d1a:	ff 15 c4 12 45 00    	call   *0x4512c4
412d20:	ff d6                	call   *%esi
412d22:	8b 45 c4             	mov    -0x3c(%ebp),%eax
412d25:	83 b8 6c 06 00 00 00 	cmpl   $0x0,0x66c(%eax)
412d2c:	75 07                	jne    0x412d35
412d2e:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
412d35:	ff 75 dc             	push   -0x24(%ebp)
412d38:	8b 88 68 06 00 00    	mov    0x668(%eax),%ecx
412d3e:	8b 55 d8             	mov    -0x28(%ebp),%edx
412d41:	f7 d9                	neg    %ecx
412d43:	6a 00                	push   $0x0
412d45:	6a 00                	push   $0x0
412d47:	ff 75 c0             	push   -0x40(%ebp)
412d4a:	8b 02                	mov    (%edx),%eax
412d4c:	1b c9                	sbb    %ecx,%ecx
412d4e:	ff 75 cc             	push   -0x34(%ebp)
412d51:	23 4d d4             	and    -0x2c(%ebp),%ecx
412d54:	51                   	push   %ecx
412d55:	ff 75 bc             	push   -0x44(%ebp)
412d58:	8b 70 0c             	mov    0xc(%eax),%esi
412d5b:	ff 75 c8             	push   -0x38(%ebp)
412d5e:	6a 00                	push   $0x0
412d60:	52                   	push   %edx
412d61:	81 fe e0 52 41 00    	cmp    $0x4152e0,%esi
412d67:	0f 85 61 86 01 00    	jne    0x42b3ce
412d6d:	e8 6e 25 00 00       	call   0x4152e0
412d72:	8b f0                	mov    %eax,%esi
412d74:	85 f6                	test   %esi,%esi
412d76:	78 7b                	js     0x412df3
412d78:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
412d7b:	ff b1 94 06 00 00    	push   0x694(%ecx)
412d81:	ff 77 0c             	push   0xc(%edi)
412d84:	ff 15 38 11 45 00    	call   *0x451138
412d8a:	3d 02 01 00 00       	cmp    $0x102,%eax
412d8f:	0f 84 48 86 01 00    	je     0x42b3dd
412d95:	8b 77 10             	mov    0x10(%edi),%esi
412d98:	85 f6                	test   %esi,%esi
412d9a:	78 57                	js     0x412df3
412d9c:	8b 03                	mov    (%ebx),%eax
412d9e:	ff 75 b8             	push   -0x48(%ebp)
412da1:	68 84 7a 40 00       	push   $0x407a84
412da6:	8b 30                	mov    (%eax),%esi
412da8:	53                   	push   %ebx
412da9:	81 fe 90 30 41 00    	cmp    $0x413090,%esi
412daf:	0f 85 39 86 01 00    	jne    0x42b3ee
412db5:	e8 d6 02 00 00       	call   0x413090
412dba:	8b f0                	mov    %eax,%esi
412dbc:	a1 00 f0 44 00       	mov    0x44f000,%eax
412dc1:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
412dc6:	74 0a                	je     0x412dd2
412dc8:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
412dcc:	0f 85 2b 86 01 00    	jne    0x42b3fd
412dd2:	85 f6                	test   %esi,%esi
412dd4:	78 22                	js     0x412df8
412dd6:	8b 43 40             	mov    0x40(%ebx),%eax
412dd9:	8d 4b 40             	lea    0x40(%ebx),%ecx
412ddc:	51                   	push   %ecx
412ddd:	8b 70 14             	mov    0x14(%eax),%esi
412de0:	81 fe c0 52 41 00    	cmp    $0x4152c0,%esi
412de6:	0f 85 3b 86 01 00    	jne    0x42b427
412dec:	e8 cf 24 00 00       	call   0x4152c0
412df1:	8b f0                	mov    %eax,%esi
412df3:	a1 00 f0 44 00       	mov    0x44f000,%eax
412df8:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
412dfd:	74 0a                	je     0x412e09
412dff:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
412e03:	0f 85 2d 86 01 00    	jne    0x42b436
412e09:	8b 4d dc             	mov    -0x24(%ebp),%ecx
412e0c:	51                   	push   %ecx
412e0d:	8b 01                	mov    (%ecx),%eax
412e0f:	8b 40 08             	mov    0x8(%eax),%eax
412e12:	89 45 d4             	mov    %eax,-0x2c(%ebp)
412e15:	3d 70 16 41 00       	cmp    $0x411670,%eax
412e1a:	0f 85 3b 86 01 00    	jne    0x42b45b
412e20:	e8 4b e8 ff ff       	call   0x411670
412e25:	8b 07                	mov    (%edi),%eax
412e27:	57                   	push   %edi
412e28:	8b 40 08             	mov    0x8(%eax),%eax
412e2b:	89 45 d4             	mov    %eax,-0x2c(%ebp)
412e2e:	3d 40 17 41 00       	cmp    $0x411740,%eax
412e33:	0f 85 3c 86 01 00    	jne    0x42b475
412e39:	e8 02 e9 ff ff       	call   0x411740
412e3e:	8b 45 d8             	mov    -0x28(%ebp),%eax
412e41:	50                   	push   %eax
412e42:	8b 08                	mov    (%eax),%ecx
412e44:	8b 79 08             	mov    0x8(%ecx),%edi
412e47:	8b cf                	mov    %edi,%ecx
412e49:	ff 15 c4 12 45 00    	call   *0x4512c4
412e4f:	ff d7                	call   *%edi
412e51:	89 b3 28 01 00 00    	mov    %esi,0x128(%ebx)
412e57:	8d 83 24 01 00 00    	lea    0x124(%ebx),%eax
412e5d:	b9 01 00 00 00       	mov    $0x1,%ecx
412e62:	87 08                	xchg   %ecx,(%eax)
412e64:	8b 83 2c 01 00 00    	mov    0x12c(%ebx),%eax
412e6a:	85 c0                	test   %eax,%eax
412e6c:	74 07                	je     0x412e75
412e6e:	50                   	push   %eax
412e6f:	ff 15 4c 11 45 00    	call   *0x45114c
412e75:	8b 03                	mov    (%ebx),%eax
412e77:	53                   	push   %ebx
412e78:	8b 78 08             	mov    0x8(%eax),%edi
412e7b:	81 ff 20 41 41 00    	cmp    $0x414120,%edi
412e81:	0f 85 29 86 01 00    	jne    0x42b4b0
412e87:	e8 94 12 00 00       	call   0x414120
412e8c:	85 f6                	test   %esi,%esi
412e8e:	0f 88 37 86 01 00    	js     0x42b4cb
412e94:	a1 00 f0 44 00       	mov    0x44f000,%eax
412e99:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
412e9e:	74 0a                	je     0x412eaa
412ea0:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
412ea4:	0f 85 35 86 01 00    	jne    0x42b4df
412eaa:	8b c6                	mov    %esi,%eax
412eac:	8b 4d f4             	mov    -0xc(%ebp),%ecx
412eaf:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
412eb6:	59                   	pop    %ecx
412eb7:	5f                   	pop    %edi
412eb8:	5e                   	pop    %esi
412eb9:	5b                   	pop    %ebx
412eba:	8b 4d f0             	mov    -0x10(%ebp),%ecx
412ebd:	33 cd                	xor    %ebp,%ecx
412ebf:	e8 4c c4 00 00       	call   0x41f310
412ec4:	8b e5                	mov    %ebp,%esp
412ec6:	5d                   	pop    %ebp
412ec7:	c2 30 00             	ret    $0x30
412eca:	cc                   	int3
412ecb:	cc                   	int3
412ecc:	cc                   	int3
412ecd:	cc                   	int3
412ece:	cc                   	int3
412ecf:	cc                   	int3
412ed0:	8b ff                	mov    %edi,%edi
412ed2:	55                   	push   %ebp
412ed3:	8b ec                	mov    %esp,%ebp
412ed5:	8b 45 10             	mov    0x10(%ebp),%eax
412ed8:	ba 84 7a 40 00       	mov    $0x407a84,%edx
412edd:	53                   	push   %ebx
412ede:	8b 5d 08             	mov    0x8(%ebp),%ebx
412ee1:	56                   	push   %esi
412ee2:	8b 75 0c             	mov    0xc(%ebp),%esi
412ee5:	8b ce                	mov    %esi,%ecx
412ee7:	57                   	push   %edi
412ee8:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
412eee:	bf 0c 00 00 00       	mov    $0xc,%edi
412ef3:	8b 01                	mov    (%ecx),%eax
412ef5:	3b 02                	cmp    (%edx),%eax
412ef7:	0f 85 d7 00 00 00    	jne    0x412fd4
412efd:	83 c1 04             	add    $0x4,%ecx
412f00:	83 c2 04             	add    $0x4,%edx
412f03:	83 ef 04             	sub    $0x4,%edi
412f06:	73 eb                	jae    0x412ef3
412f08:	33 c0                	xor    %eax,%eax
412f0a:	85 c0                	test   %eax,%eax
412f0c:	0f 84 99 00 00 00    	je     0x412fab
412f12:	8b ce                	mov    %esi,%ecx
412f14:	ba 28 6b 40 00       	mov    $0x406b28,%edx
412f19:	bf 0c 00 00 00       	mov    $0xc,%edi
412f1e:	8b ff                	mov    %edi,%edi
412f20:	8b 01                	mov    (%ecx),%eax
412f22:	3b 02                	cmp    (%edx),%eax
412f24:	0f 85 d4 00 00 00    	jne    0x412ffe
412f2a:	83 c1 04             	add    $0x4,%ecx
412f2d:	83 c2 04             	add    $0x4,%edx
412f30:	83 ef 04             	sub    $0x4,%edi
412f33:	73 eb                	jae    0x412f20
412f35:	33 c0                	xor    %eax,%eax
412f37:	85 c0                	test   %eax,%eax
412f39:	74 70                	je     0x412fab
412f3b:	8b ce                	mov    %esi,%ecx
412f3d:	ba 38 6b 40 00       	mov    $0x406b38,%edx
412f42:	bf 0c 00 00 00       	mov    $0xc,%edi
412f47:	eb 07                	jmp    0x412f50
412f49:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
412f50:	8b 01                	mov    (%ecx),%eax
412f52:	3b 02                	cmp    (%edx),%eax
412f54:	0f 85 ce 00 00 00    	jne    0x413028
412f5a:	83 c1 04             	add    $0x4,%ecx
412f5d:	83 c2 04             	add    $0x4,%edx
412f60:	83 ef 04             	sub    $0x4,%edi
412f63:	73 eb                	jae    0x412f50
412f65:	33 c0                	xor    %eax,%eax
412f67:	85 c0                	test   %eax,%eax
412f69:	74 35                	je     0x412fa0
412f6b:	b8 08 6c 40 00       	mov    $0x406c08,%eax
412f70:	ba 0c 00 00 00       	mov    $0xc,%edx
412f75:	8b 0e                	mov    (%esi),%ecx
412f77:	3b 08                	cmp    (%eax),%ecx
412f79:	0f 85 e2 00 00 00    	jne    0x413061
412f7f:	83 c6 04             	add    $0x4,%esi
412f82:	83 c0 04             	add    $0x4,%eax
412f85:	83 ea 04             	sub    $0x4,%edx
412f88:	73 eb                	jae    0x412f75
412f8a:	33 c0                	xor    %eax,%eax
412f8c:	85 c0                	test   %eax,%eax
412f8e:	0f 84 7e 85 01 00    	je     0x42b512
412f94:	5f                   	pop    %edi
412f95:	5e                   	pop    %esi
412f96:	b8 02 40 00 80       	mov    $0x80004002,%eax
412f9b:	5b                   	pop    %ebx
412f9c:	5d                   	pop    %ebp
412f9d:	c2 0c 00             	ret    $0xc
412fa0:	85 db                	test   %ebx,%ebx
412fa2:	0f 84 63 85 01 00    	je     0x42b50b
412fa8:	83 c3 04             	add    $0x4,%ebx
412fab:	8b 45 10             	mov    0x10(%ebp),%eax
412fae:	89 18                	mov    %ebx,(%eax)
412fb0:	85 db                	test   %ebx,%ebx
412fb2:	74 e0                	je     0x412f94
412fb4:	8b 03                	mov    (%ebx),%eax
412fb6:	53                   	push   %ebx
412fb7:	8b 70 04             	mov    0x4(%eax),%esi
412fba:	81 fe 80 3b 41 00    	cmp    $0x413b80,%esi
412fc0:	0f 85 8c 00 00 00    	jne    0x413052
412fc6:	e8 b5 0b 00 00       	call   0x413b80
412fcb:	5f                   	pop    %edi
412fcc:	5e                   	pop    %esi
412fcd:	33 c0                	xor    %eax,%eax
412fcf:	5b                   	pop    %ebx
412fd0:	5d                   	pop    %ebp
412fd1:	c2 0c 00             	ret    $0xc
412fd4:	3a 02                	cmp    (%edx),%al
412fd6:	75 1c                	jne    0x412ff4
412fd8:	8a 41 01             	mov    0x1(%ecx),%al
412fdb:	3a 42 01             	cmp    0x1(%edx),%al
412fde:	75 14                	jne    0x412ff4
412fe0:	8a 41 02             	mov    0x2(%ecx),%al
412fe3:	3a 42 02             	cmp    0x2(%edx),%al
412fe6:	75 0c                	jne    0x412ff4
412fe8:	8a 41 03             	mov    0x3(%ecx),%al
412feb:	3a 42 03             	cmp    0x3(%edx),%al
412fee:	0f 84 14 ff ff ff    	je     0x412f08
412ff4:	1b c0                	sbb    %eax,%eax
412ff6:	83 c8 01             	or     $0x1,%eax
412ff9:	e9 0c ff ff ff       	jmp    0x412f0a
412ffe:	3a 02                	cmp    (%edx),%al
413000:	75 1c                	jne    0x41301e
413002:	8a 41 01             	mov    0x1(%ecx),%al
413005:	3a 42 01             	cmp    0x1(%edx),%al
413008:	75 14                	jne    0x41301e
41300a:	8a 41 02             	mov    0x2(%ecx),%al
41300d:	3a 42 02             	cmp    0x2(%edx),%al
413010:	75 0c                	jne    0x41301e
413012:	8a 41 03             	mov    0x3(%ecx),%al
413015:	3a 42 03             	cmp    0x3(%edx),%al
413018:	0f 84 17 ff ff ff    	je     0x412f35
41301e:	1b c0                	sbb    %eax,%eax
413020:	83 c8 01             	or     $0x1,%eax
413023:	e9 0f ff ff ff       	jmp    0x412f37
413028:	3a 02                	cmp    (%edx),%al
41302a:	75 1c                	jne    0x413048
41302c:	8a 41 01             	mov    0x1(%ecx),%al
41302f:	3a 42 01             	cmp    0x1(%edx),%al
413032:	75 14                	jne    0x413048
413034:	8a 41 02             	mov    0x2(%ecx),%al
413037:	3a 42 02             	cmp    0x2(%edx),%al
41303a:	75 0c                	jne    0x413048
41303c:	8a 41 03             	mov    0x3(%ecx),%al
41303f:	3a 42 03             	cmp    0x3(%edx),%al
413042:	0f 84 1d ff ff ff    	je     0x412f65
413048:	1b c0                	sbb    %eax,%eax
41304a:	83 c8 01             	or     $0x1,%eax
41304d:	e9 15 ff ff ff       	jmp    0x412f67
413052:	8b ce                	mov    %esi,%ecx
413054:	ff 15 c4 12 45 00    	call   *0x4512c4
41305a:	ff d6                	call   *%esi
41305c:	e9 6a ff ff ff       	jmp    0x412fcb
413061:	3a 08                	cmp    (%eax),%cl
413063:	75 1c                	jne    0x413081
413065:	8a 4e 01             	mov    0x1(%esi),%cl
413068:	3a 48 01             	cmp    0x1(%eax),%cl
41306b:	75 14                	jne    0x413081
41306d:	8a 4e 02             	mov    0x2(%esi),%cl
413070:	3a 48 02             	cmp    0x2(%eax),%cl
413073:	75 0c                	jne    0x413081
413075:	8a 4e 03             	mov    0x3(%esi),%cl
413078:	3a 48 03             	cmp    0x3(%eax),%cl
41307b:	0f 84 09 ff ff ff    	je     0x412f8a
413081:	1b c0                	sbb    %eax,%eax
413083:	83 c8 01             	or     $0x1,%eax
413086:	e9 01 ff ff ff       	jmp    0x412f8c
41308b:	cc                   	int3
41308c:	cc                   	int3
41308d:	cc                   	int3
41308e:	cc                   	int3
41308f:	cc                   	int3
413090:	8b ff                	mov    %edi,%edi
413092:	55                   	push   %ebp
413093:	8b ec                	mov    %esp,%ebp
413095:	8b 45 10             	mov    0x10(%ebp),%eax
413098:	ba 84 7a 40 00       	mov    $0x407a84,%edx
41309d:	53                   	push   %ebx
41309e:	8b 5d 08             	mov    0x8(%ebp),%ebx
4130a1:	56                   	push   %esi
4130a2:	57                   	push   %edi
4130a3:	8b 7d 0c             	mov    0xc(%ebp),%edi
4130a6:	be 0c 00 00 00       	mov    $0xc,%esi
4130ab:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
4130b1:	8b cf                	mov    %edi,%ecx
4130b3:	8b 01                	mov    (%ecx),%eax
4130b5:	3b 02                	cmp    (%edx),%eax
4130b7:	0f 85 34 05 00 00    	jne    0x4135f1
4130bd:	83 c1 04             	add    $0x4,%ecx
4130c0:	83 c2 04             	add    $0x4,%edx
4130c3:	83 ee 04             	sub    $0x4,%esi
4130c6:	73 eb                	jae    0x4130b3
4130c8:	33 c0                	xor    %eax,%eax
4130ca:	85 c0                	test   %eax,%eax
4130cc:	0f 84 c6 04 00 00    	je     0x413598
4130d2:	8b cf                	mov    %edi,%ecx
4130d4:	ba 48 6b 40 00       	mov    $0x406b48,%edx
4130d9:	be 0c 00 00 00       	mov    $0xc,%esi
4130de:	8b ff                	mov    %edi,%edi
4130e0:	8b 01                	mov    (%ecx),%eax
4130e2:	3b 02                	cmp    (%edx),%eax
4130e4:	0f 85 31 05 00 00    	jne    0x41361b
4130ea:	83 c1 04             	add    $0x4,%ecx
4130ed:	83 c2 04             	add    $0x4,%edx
4130f0:	83 ee 04             	sub    $0x4,%esi
4130f3:	73 eb                	jae    0x4130e0
4130f5:	33 c0                	xor    %eax,%eax
4130f7:	85 c0                	test   %eax,%eax
4130f9:	0f 84 8c 04 00 00    	je     0x41358b
4130ff:	8b cf                	mov    %edi,%ecx