409d7b:	2b f8                	sub    %eax,%edi
409d7d:	74 10                	je     0x409d8f
409d7f:	33 c9                	xor    %ecx,%ecx
409d81:	85 ff                	test   %edi,%edi
409d83:	0f 9f c1             	setg   %cl
409d86:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409d8d:	eb 1a                	jmp    0x409da9
409d8f:	0f b6 4e f8          	movzbl -0x8(%esi),%ecx
409d93:	0f b6 42 f8          	movzbl -0x8(%edx),%eax
409d97:	2b c8                	sub    %eax,%ecx
409d99:	74 0e                	je     0x409da9
409d9b:	33 c0                	xor    %eax,%eax
409d9d:	85 c9                	test   %ecx,%ecx
409d9f:	0f 9f c0             	setg   %al
409da2:	8d 0c 45 ff ff ff ff 	lea    -0x1(,%eax,2),%ecx
409da9:	85 c9                	test   %ecx,%ecx
409dab:	0f 85 7e f8 ff ff    	jne    0x40962f
409db1:	8b 46 f9             	mov    -0x7(%esi),%eax
409db4:	3b 42 f9             	cmp    -0x7(%edx),%eax
409db7:	74 55                	je     0x409e0e
409db9:	0f b6 f8             	movzbl %al,%edi
409dbc:	0f b6 42 f9          	movzbl -0x7(%edx),%eax
409dc0:	2b f8                	sub    %eax,%edi
409dc2:	75 18                	jne    0x409ddc
409dc4:	0f b6 7e fa          	movzbl -0x6(%esi),%edi
409dc8:	0f b6 42 fa          	movzbl -0x6(%edx),%eax
409dcc:	2b f8                	sub    %eax,%edi
409dce:	75 0c                	jne    0x409ddc
409dd0:	0f b6 7e fb          	movzbl -0x5(%esi),%edi
409dd4:	0f b6 42 fb          	movzbl -0x5(%edx),%eax
409dd8:	2b f8                	sub    %eax,%edi
409dda:	74 10                	je     0x409dec
409ddc:	33 c9                	xor    %ecx,%ecx
409dde:	85 ff                	test   %edi,%edi
409de0:	0f 9f c1             	setg   %cl
409de3:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409dea:	eb 1a                	jmp    0x409e06
409dec:	0f b6 4e fc          	movzbl -0x4(%esi),%ecx
409df0:	0f b6 42 fc          	movzbl -0x4(%edx),%eax
409df4:	2b c8                	sub    %eax,%ecx
409df6:	74 0e                	je     0x409e06
409df8:	33 c0                	xor    %eax,%eax
409dfa:	85 c9                	test   %ecx,%ecx
409dfc:	0f 9f c0             	setg   %al
409dff:	8d 0c 45 ff ff ff ff 	lea    -0x1(,%eax,2),%ecx
409e06:	85 c9                	test   %ecx,%ecx
409e08:	0f 85 21 f8 ff ff    	jne    0x40962f
409e0e:	0f b6 7e fd          	movzbl -0x3(%esi),%edi
409e12:	0f b6 42 fd          	movzbl -0x3(%edx),%eax
409e16:	2b f8                	sub    %eax,%edi
409e18:	75 10                	jne    0x409e2a
409e1a:	0f b6 42 fe          	movzbl -0x2(%edx),%eax
409e1e:	0f b6 7e fe          	movzbl -0x2(%esi),%edi
409e22:	2b f8                	sub    %eax,%edi
409e24:	0f 84 95 fa ff ff    	je     0x4098bf
409e2a:	33 c9                	xor    %ecx,%ecx
409e2c:	85 ff                	test   %edi,%edi
409e2e:	0f 9f c1             	setg   %cl
409e31:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409e38:	e9 f2 f7 ff ff       	jmp    0x40962f
409e3d:	8b 4d 08             	mov    0x8(%ebp),%ecx
409e40:	0f b6 02             	movzbl (%edx),%eax
409e43:	0f b6 31             	movzbl (%ecx),%esi
409e46:	2b f0                	sub    %eax,%esi
409e48:	75 18                	jne    0x409e62
409e4a:	0f b6 71 01          	movzbl 0x1(%ecx),%esi
409e4e:	0f b6 42 01          	movzbl 0x1(%edx),%eax
409e52:	2b f0                	sub    %eax,%esi
409e54:	75 0c                	jne    0x409e62
409e56:	0f b6 71 02          	movzbl 0x2(%ecx),%esi
409e5a:	0f b6 42 02          	movzbl 0x2(%edx),%eax
409e5e:	2b f0                	sub    %eax,%esi
409e60:	74 10                	je     0x409e72
409e62:	33 c9                	xor    %ecx,%ecx
409e64:	85 f6                	test   %esi,%esi
409e66:	0f 9f c1             	setg   %cl
409e69:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
409e70:	eb 1a                	jmp    0x409e8c
409e72:	0f b6 49 03          	movzbl 0x3(%ecx),%ecx
409e76:	0f b6 42 03          	movzbl 0x3(%edx),%eax
409e7a:	2b c8                	sub    %eax,%ecx
409e7c:	74 0e                	je     0x409e8c
409e7e:	33 c0                	xor    %eax,%eax
409e80:	85 c9                	test   %ecx,%ecx
409e82:	0f 9f c0             	setg   %al
409e85:	8d 0c 45 ff ff ff ff 	lea    -0x1(,%eax,2),%ecx
409e8c:	8b c1                	mov    %ecx,%eax
409e8e:	eb 56                	jmp    0x409ee6
409e90:	8b 4d 08             	mov    0x8(%ebp),%ecx
409e93:	8b 75 0c             	mov    0xc(%ebp),%esi
409e96:	0f b6 11             	movzbl (%ecx),%edx
409e99:	0f b6 06             	movzbl (%esi),%eax
409e9c:	2b d0                	sub    %eax,%edx
409e9e:	75 0c                	jne    0x409eac
409ea0:	0f b6 51 01          	movzbl 0x1(%ecx),%edx
409ea4:	0f b6 46 01          	movzbl 0x1(%esi),%eax
409ea8:	2b d0                	sub    %eax,%edx
409eaa:	74 06                	je     0x409eb2
409eac:	33 c9                	xor    %ecx,%ecx
409eae:	85 d2                	test   %edx,%edx
409eb0:	eb b4                	jmp    0x409e66
409eb2:	0f b6 49 02          	movzbl 0x2(%ecx),%ecx
409eb6:	0f b6 46 02          	movzbl 0x2(%esi),%eax
409eba:	eb be                	jmp    0x409e7a
409ebc:	8b 4d 08             	mov    0x8(%ebp),%ecx
409ebf:	8b 75 0c             	mov    0xc(%ebp),%esi
409ec2:	0f b6 11             	movzbl (%ecx),%edx
409ec5:	0f b6 06             	movzbl (%esi),%eax
409ec8:	2b d0                	sub    %eax,%edx
409eca:	75 e0                	jne    0x409eac
409ecc:	0f b6 49 01          	movzbl 0x1(%ecx),%ecx
409ed0:	0f b6 46 01          	movzbl 0x1(%esi),%eax
409ed4:	eb a4                	jmp    0x409e7a
409ed6:	8b 45 08             	mov    0x8(%ebp),%eax
409ed9:	0f b6 08             	movzbl (%eax),%ecx
409edc:	8b 45 0c             	mov    0xc(%ebp),%eax
409edf:	0f b6 00             	movzbl (%eax),%eax
409ee2:	eb 96                	jmp    0x409e7a
409ee4:	33 c0                	xor    %eax,%eax
409ee6:	5e                   	pop    %esi
409ee7:	5b                   	pop    %ebx
409ee8:	5d                   	pop    %ebp
409ee9:	c3                   	ret
409eea:	8b ff                	mov    %edi,%edi
409eec:	2d 96 40 00 bf       	sub    $0xbf004096,%eax
409ef1:	98                   	cwtl
409ef2:	40                   	inc    %eax
409ef3:	00 6e 9b             	add    %ch,-0x65(%esi)
409ef6:	40                   	inc    %eax
409ef7:	00 0e                	add    %cl,(%esi)
409ef9:	9e                   	sahf
409efa:	40                   	inc    %eax
409efb:	00 d4                	add    %dl,%ah
409efd:	95                   	xchg   %eax,%ebp
409efe:	40                   	inc    %eax
409eff:	00 62 98             	add    %ah,-0x68(%edx)
409f02:	40                   	inc    %eax
409f03:	00 11                	add    %dl,(%ecx)
409f05:	9b                   	fwait
409f06:	40                   	inc    %eax
409f07:	00 b1 9d 40 00 7b    	add    %dh,0x7b00409d(%ecx)
409f0d:	95                   	xchg   %eax,%ebp
409f0e:	40                   	inc    %eax
409f0f:	00 04 98             	add    %al,(%eax,%ebx,4)
409f12:	40                   	inc    %eax
409f13:	00 b3 9a 40 00 54    	add    %dh,0x5400409a(%ebx)
409f19:	9d                   	popf
409f1a:	40                   	inc    %eax
409f1b:	00 1d 95 40 00 a7    	add    %bl,0xa7004095
409f21:	97                   	xchg   %eax,%edi
409f22:	40                   	inc    %eax
409f23:	00 56 9a             	add    %dl,-0x66(%esi)
409f26:	40                   	inc    %eax
409f27:	00 f6                	add    %dh,%dh
409f29:	9c                   	pushf
409f2a:	40                   	inc    %eax
409f2b:	00 c0                	add    %al,%al
409f2d:	94                   	xchg   %eax,%esp
409f2e:	40                   	inc    %eax
409f2f:	00 4a 97             	add    %cl,-0x69(%edx)
409f32:	40                   	inc    %eax
409f33:	00 f9                	add    %bh,%cl
409f35:	99                   	cltd
409f36:	40                   	inc    %eax
409f37:	00 99 9c 40 00 63    	add    %bl,0x6300409c(%ecx)
409f3d:	94                   	xchg   %eax,%esp
409f3e:	40                   	inc    %eax
409f3f:	00 ed                	add    %ch,%ch
409f41:	96                   	xchg   %eax,%esi
409f42:	40                   	inc    %eax
409f43:	00 9c 99 40 00 3c 9c 	add    %bl,-0x63c3ffc0(%ecx,%ebx,4)
409f4a:	40                   	inc    %eax
409f4b:	00 06                	add    %al,(%esi)
409f4d:	94                   	xchg   %eax,%esp
409f4e:	40                   	inc    %eax
409f4f:	00 90 96 40 00 3f    	add    %dl,0x3f004096(%eax)
409f55:	99                   	cltd
409f56:	40                   	inc    %eax
409f57:	00 df                	add    %bl,%bh
409f59:	9b                   	fwait
409f5a:	40                   	inc    %eax
409f5b:	00 a9 93 40 00 37    	add    %ch,0x37004093(%ecx)
409f61:	96                   	xchg   %eax,%esi
409f62:	40                   	inc    %eax
409f63:	00 e2                	add    %ah,%dl
409f65:	98                   	cwtl
409f66:	40                   	inc    %eax
409f67:	00 81 9b 40 00 cc    	add    %al,-0x33ffbf65(%ecx)
409f6d:	cc                   	int3
409f6e:	cc                   	int3
409f6f:	cc                   	int3
409f70:	55                   	push   %ebp
409f71:	8b ec                	mov    %esp,%ebp
409f73:	56                   	push   %esi
409f74:	8b 75 08             	mov    0x8(%ebp),%esi
409f77:	57                   	push   %edi
409f78:	8b 7d 0c             	mov    0xc(%ebp),%edi
409f7b:	8b 06                	mov    (%esi),%eax
409f7d:	83 f8 fe             	cmp    $0xfffffffe,%eax
409f80:	74 0d                	je     0x409f8f
409f82:	8b 4e 04             	mov    0x4(%esi),%ecx
409f85:	03 cf                	add    %edi,%ecx
409f87:	33 0c 38             	xor    (%eax,%edi,1),%ecx
409f8a:	e8 7d d4 ff ff       	call   0x40740c
409f8f:	8b 46 08             	mov    0x8(%esi),%eax
409f92:	8b 4e 0c             	mov    0xc(%esi),%ecx
409f95:	03 cf                	add    %edi,%ecx
409f97:	33 0c 38             	xor    (%eax,%edi,1),%ecx
409f9a:	5f                   	pop    %edi
409f9b:	5e                   	pop    %esi
409f9c:	5d                   	pop    %ebp
409f9d:	e9 6a d4 ff ff       	jmp    0x40740c
409fa2:	cc                   	int3
409fa3:	cc                   	int3
409fa4:	cc                   	int3
409fa5:	cc                   	int3
409fa6:	cc                   	int3
409fa7:	cc                   	int3
409fa8:	cc                   	int3
409fa9:	cc                   	int3
409faa:	cc                   	int3
409fab:	cc                   	int3
409fac:	cc                   	int3
409fad:	cc                   	int3
409fae:	cc                   	int3
409faf:	cc                   	int3
409fb0:	55                   	push   %ebp
409fb1:	8b ec                	mov    %esp,%ebp
409fb3:	83 ec 1c             	sub    $0x1c,%esp
409fb6:	53                   	push   %ebx
409fb7:	8b 5d 08             	mov    0x8(%ebp),%ebx
409fba:	56                   	push   %esi
409fbb:	57                   	push   %edi
409fbc:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
409fc0:	ff 33                	push   (%ebx)
409fc2:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
409fc9:	e8 62 89 01 00       	call   0x422930
409fce:	89 03                	mov    %eax,(%ebx)
409fd0:	8b 5d 0c             	mov    0xc(%ebp),%ebx
409fd3:	8b 43 08             	mov    0x8(%ebx),%eax
409fd6:	8d 73 10             	lea    0x10(%ebx),%esi
409fd9:	33 05 14 30 43 00    	xor    0x433014,%eax
409fdf:	56                   	push   %esi
409fe0:	50                   	push   %eax
409fe1:	89 75 f0             	mov    %esi,-0x10(%ebp)
409fe4:	89 45 f8             	mov    %eax,-0x8(%ebp)
409fe7:	e8 84 ff ff ff       	call   0x409f70
409fec:	ff 75 10             	push   0x10(%ebp)
409fef:	e8 48 10 00 00       	call   0x40b03c
409ff4:	8b 45 08             	mov    0x8(%ebp),%eax
409ff7:	83 c4 10             	add    $0x10,%esp
409ffa:	8b 7b 0c             	mov    0xc(%ebx),%edi
409ffd:	f6 40 04 66          	testb  $0x66,0x4(%eax)
40a001:	75 5a                	jne    0x40a05d
40a003:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40a006:	8b 45 10             	mov    0x10(%ebp),%eax
40a009:	89 45 e8             	mov    %eax,-0x18(%ebp)
40a00c:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40a00f:	89 43 fc             	mov    %eax,-0x4(%ebx)
40a012:	83 ff fe             	cmp    $0xfffffffe,%edi
40a015:	74 69                	je     0x40a080
40a017:	8b 4d f8             	mov    -0x8(%ebp),%ecx
40a01a:	8d 47 02             	lea    0x2(%edi),%eax
40a01d:	8d 04 47             	lea    (%edi,%eax,2),%eax
40a020:	8b 1c 81             	mov    (%ecx,%eax,4),%ebx
40a023:	8d 04 81             	lea    (%ecx,%eax,4),%eax
40a026:	8b 48 04             	mov    0x4(%eax),%ecx
40a029:	89 45 ec             	mov    %eax,-0x14(%ebp)
40a02c:	85 c9                	test   %ecx,%ecx
40a02e:	74 14                	je     0x40a044
40a030:	8b d6                	mov    %esi,%edx
40a032:	e8 29 11 00 00       	call   0x40b160
40a037:	b1 01                	mov    $0x1,%cl
40a039:	88 4d ff             	mov    %cl,-0x1(%ebp)
40a03c:	85 c0                	test   %eax,%eax
40a03e:	78 14                	js     0x40a054
40a040:	7f 48                	jg     0x40a08a
40a042:	eb 03                	jmp    0x40a047
40a044:	8a 4d ff             	mov    -0x1(%ebp),%cl
40a047:	8b fb                	mov    %ebx,%edi
40a049:	83 fb fe             	cmp    $0xfffffffe,%ebx
40a04c:	75 c9                	jne    0x40a017
40a04e:	84 c9                	test   %cl,%cl
40a050:	74 2e                	je     0x40a080
40a052:	eb 20                	jmp    0x40a074
40a054:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
40a05b:	eb 17                	jmp    0x40a074
40a05d:	83 ff fe             	cmp    $0xfffffffe,%edi
40a060:	74 1e                	je     0x40a080
40a062:	68 14 30 43 00       	push   $0x433014
40a067:	56                   	push   %esi
40a068:	ba fe ff ff ff       	mov    $0xfffffffe,%edx
40a06d:	8b cb                	mov    %ebx,%ecx
40a06f:	e8 4c 11 00 00       	call   0x40b1c0
40a074:	56                   	push   %esi
40a075:	ff 75 f8             	push   -0x8(%ebp)
40a078:	e8 f3 fe ff ff       	call   0x409f70
40a07d:	83 c4 08             	add    $0x8,%esp
40a080:	8b 45 f4             	mov    -0xc(%ebp),%eax
40a083:	5f                   	pop    %edi
40a084:	5e                   	pop    %esi
40a085:	5b                   	pop    %ebx
40a086:	8b e5                	mov    %ebp,%esp
40a088:	5d                   	pop    %ebp
40a089:	c3                   	ret
40a08a:	8b 45 08             	mov    0x8(%ebp),%eax
40a08d:	81 38 63 73 6d e0    	cmpl   $0xe06d7363,(%eax)
40a093:	75 38                	jne    0x40a0cd
40a095:	83 3d e4 51 42 00 00 	cmpl   $0x0,0x4251e4
40a09c:	74 2f                	je     0x40a0cd
40a09e:	68 e4 51 42 00       	push   $0x4251e4
40a0a3:	e8 48 83 01 00       	call   0x4223f0
40a0a8:	83 c4 04             	add    $0x4,%esp
40a0ab:	85 c0                	test   %eax,%eax
40a0ad:	74 1b                	je     0x40a0ca
40a0af:	8b 35 e4 51 42 00    	mov    0x4251e4,%esi
40a0b5:	8b ce                	mov    %esi,%ecx
40a0b7:	6a 01                	push   $0x1
40a0b9:	ff 75 08             	push   0x8(%ebp)
40a0bc:	ff 15 54 41 42 00    	call   *0x424154
40a0c2:	ff d6                	call   *%esi
40a0c4:	8b 75 f0             	mov    -0x10(%ebp),%esi
40a0c7:	83 c4 08             	add    $0x8,%esp
40a0ca:	8b 45 08             	mov    0x8(%ebp),%eax
40a0cd:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40a0d0:	8b d0                	mov    %eax,%edx
40a0d2:	e8 c9 10 00 00       	call   0x40b1a0
40a0d7:	8b 45 0c             	mov    0xc(%ebp),%eax
40a0da:	39 78 0c             	cmp    %edi,0xc(%eax)
40a0dd:	74 12                	je     0x40a0f1
40a0df:	68 14 30 43 00       	push   $0x433014
40a0e4:	56                   	push   %esi
40a0e5:	8b d7                	mov    %edi,%edx
40a0e7:	8b c8                	mov    %eax,%ecx
40a0e9:	e8 d2 10 00 00       	call   0x40b1c0
40a0ee:	8b 45 0c             	mov    0xc(%ebp),%eax
40a0f1:	56                   	push   %esi
40a0f2:	ff 75 f8             	push   -0x8(%ebp)
40a0f5:	89 58 0c             	mov    %ebx,0xc(%eax)
40a0f8:	e8 73 fe ff ff       	call   0x409f70
40a0fd:	8b 4d ec             	mov    -0x14(%ebp),%ecx
40a100:	83 c4 08             	add    $0x8,%esp
40a103:	8b d6                	mov    %esi,%edx
40a105:	8b 49 08             	mov    0x8(%ecx),%ecx
40a108:	e8 73 10 00 00       	call   0x40b180
40a10d:	cc                   	int3
40a10e:	e8 c4 10 00 00       	call   0x40b1d7
40a113:	84 c0                	test   %al,%al
40a115:	75 03                	jne    0x40a11a
40a117:	32 c0                	xor    %al,%al