401c7e:	8b d3                	mov    %ebx,%edx
401c80:	2b d6                	sub    %esi,%edx
401c82:	03 d7                	add    %edi,%edx
401c84:	52                   	push   %edx
401c85:	8d 45 c0             	lea    -0x40(%ebp),%eax
401c88:	50                   	push   %eax
401c89:	e8 c2 6d 01 00       	call   0x418a50
401c8e:	83 c4 08             	add    $0x8,%esp
401c91:	2b fe                	sub    %esi,%edi
401c93:	eb 15                	jmp    0x401caa
401c95:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
401c98:	53                   	push   %ebx
401c99:	51                   	push   %ecx
401c9a:	e8 21 64 01 00       	call   0x4180c0
401c9f:	83 c4 08             	add    $0x8,%esp
401ca2:	85 c0                	test   %eax,%eax
401ca4:	0f 84 94 00 00 00    	je     0x401d3e
401caa:	8b 75 08             	mov    0x8(%ebp),%esi
401cad:	6a 00                	push   $0x0
401caf:	6a 04                	push   $0x4
401cb1:	8d 95 74 fe ff ff    	lea    -0x18c(%ebp),%edx
401cb7:	52                   	push   %edx
401cb8:	56                   	push   %esi
401cb9:	e8 b2 6a 00 00       	call   0x408770
401cbe:	8d 85 74 fe ff ff    	lea    -0x18c(%ebp),%eax
401cc4:	50                   	push   %eax
401cc5:	e8 86 69 01 00       	call   0x418650
401cca:	6a 00                	push   $0x0
401ccc:	8d 4d 0c             	lea    0xc(%ebp),%ecx
401ccf:	51                   	push   %ecx
401cd0:	8d 95 74 fe ff ff    	lea    -0x18c(%ebp),%edx
401cd6:	52                   	push   %edx
401cd7:	e8 e4 6a 01 00       	call   0x4187c0
401cdc:	6a 08                	push   $0x8
401cde:	6a 05                	push   $0x5
401ce0:	e8 2b 62 00 00       	call   0x407f10
401ce5:	0f b6 c0             	movzbl %al,%eax
401ce8:	83 c4 28             	add    $0x28,%esp
401ceb:	50                   	push   %eax
401cec:	8d 8d 74 fe ff ff    	lea    -0x18c(%ebp),%ecx
401cf2:	51                   	push   %ecx
401cf3:	e8 58 69 01 00       	call   0x418650
401cf8:	8d 94 45 74 fe ff ff 	lea    -0x18c(%ebp,%eax,2),%edx
401cff:	83 c4 04             	add    $0x4,%esp
401d02:	52                   	push   %edx
401d03:	e8 c8 75 01 00       	call   0x4192d0
401d08:	6a 00                	push   $0x0
401d0a:	8d 45 c0             	lea    -0x40(%ebp),%eax
401d0d:	50                   	push   %eax
401d0e:	8d 8d 74 fe ff ff    	lea    -0x18c(%ebp),%ecx
401d14:	51                   	push   %ecx
401d15:	e8 a6 6a 01 00       	call   0x4187c0
401d1a:	6a 00                	push   $0x0
401d1c:	6a 1c                	push   $0x1c
401d1e:	8d 95 74 fe ff ff    	lea    -0x18c(%ebp),%edx
401d24:	52                   	push   %edx
401d25:	56                   	push   %esi
401d26:	89 9e 30 0b 00 00    	mov    %ebx,0xb30(%esi)
401d2c:	89 be 34 0b 00 00    	mov    %edi,0xb34(%esi)
401d32:	e8 99 01 01 00       	call   0x411ed0
401d37:	83 c4 24             	add    $0x24,%esp
401d3a:	85 c0                	test   %eax,%eax
401d3c:	75 0c                	jne    0x401d4a
401d3e:	5e                   	pop    %esi
401d3f:	5f                   	pop    %edi
401d40:	b8 04 00 00 00       	mov    $0x4,%eax
401d45:	5b                   	pop    %ebx
401d46:	8b e5                	mov    %ebp,%esp
401d48:	5d                   	pop    %ebp
401d49:	c3                   	ret
401d4a:	6a 3f                	push   $0x3f
401d4c:	8d 85 75 ff ff ff    	lea    -0x8b(%ebp),%eax
401d52:	6a 00                	push   $0x0
401d54:	50                   	push   %eax
401d55:	c6 85 74 ff ff ff 00 	movb   $0x0,-0x8c(%ebp)
401d5c:	e8 7f 66 01 00       	call   0x4183e0
401d61:	8d 8d 74 fe ff ff    	lea    -0x18c(%ebp),%ecx
401d67:	51                   	push   %ecx
401d68:	8d 95 f4 fd ff ff    	lea    -0x20c(%ebp),%edx
401d6e:	52                   	push   %edx
401d6f:	e8 8c 6c 01 00       	call   0x418a00
401d74:	8d 85 74 ff ff ff    	lea    -0x8c(%ebp),%eax
401d7a:	6a 07                	push   $0x7
401d7c:	50                   	push   %eax
401d7d:	e8 fe 71 01 00       	call   0x418f80
401d82:	8d 8d 74 ff ff ff    	lea    -0x8c(%ebp),%ecx
401d88:	51                   	push   %ecx
401d89:	83 c6 1c             	add    $0x1c,%esi
401d8c:	56                   	push   %esi
401d8d:	e8 8e 66 00 00       	call   0x408420
401d92:	68 dd 36 ca 10       	push   $0x10ca36dd
401d97:	6a 00                	push   $0x0
401d99:	6a 00                	push   $0x0
401d9b:	50                   	push   %eax
401d9c:	56                   	push   %esi
401d9d:	e8 2e 05 01 00       	call   0x4122d0
401da2:	83 c4 38             	add    $0x38,%esp
401da5:	85 c0                	test   %eax,%eax
401da7:	74 13                	je     0x401dbc
401da9:	6a 0a                	push   $0xa
401dab:	6a 00                	push   $0x0
401dad:	6a 00                	push   $0x0
401daf:	8d 95 f4 fd ff ff    	lea    -0x20c(%ebp),%edx
401db5:	52                   	push   %edx
401db6:	6a 00                	push   $0x0
401db8:	6a 00                	push   $0x0
401dba:	ff d0                	call   *%eax
401dbc:	5e                   	pop    %esi
401dbd:	5f                   	pop    %edi
401dbe:	b8 02 00 00 00       	mov    $0x2,%eax
401dc3:	5b                   	pop    %ebx
401dc4:	8b e5                	mov    %ebp,%esp
401dc6:	5d                   	pop    %ebp
401dc7:	c3                   	ret
401dc8:	5f                   	pop    %edi
401dc9:	b8 04 00 00 00       	mov    $0x4,%eax
401dce:	5b                   	pop    %ebx
401dcf:	8b e5                	mov    %ebp,%esp
401dd1:	5d                   	pop    %ebp
401dd2:	c3                   	ret
401dd3:	c8 d9 8d 6c          	enter  $0x8dd9,$0x6c
401dd7:	d0 d2                	rcl    $1,%dl
401dd9:	b1 15                	mov    $0x15,%cl
401ddb:	d4 01                	aam    $0x1
401ddd:	a8 d8                	test   $0xd8,%al
401ddf:	ce                   	into
401de0:	55                   	push   %ebp
401de1:	8b ec                	mov    %esp,%ebp
401de3:	56                   	push   %esi
401de4:	8b 75 08             	mov    0x8(%ebp),%esi
401de7:	68 80 0f 05 fd       	push   $0xfd050f80
401dec:	56                   	push   %esi
401ded:	e8 9e af 00 00       	call   0x40cd90
401df2:	6a 1e                	push   $0x1e
401df4:	6a 00                	push   $0x0
401df6:	6a 00                	push   $0x0
401df8:	56                   	push   %esi
401df9:	e8 d2 42 00 00       	call   0x4060d0
401dfe:	8b 86 24 0a 00 00    	mov    0xa24(%esi),%eax
401e04:	50                   	push   %eax
401e05:	56                   	push   %esi
401e06:	e8 e5 4e 01 00       	call   0x416cf0
401e0b:	6a 00                	push   $0x0
401e0d:	6a 13                	push   $0x13
401e0f:	8d 8e 28 0a 00 00    	lea    0xa28(%esi),%ecx
401e15:	51                   	push   %ecx
401e16:	56                   	push   %esi
401e17:	e8 b4 00 01 00       	call   0x411ed0
401e1c:	83 c4 30             	add    $0x30,%esp
401e1f:	b8 01 00 00 00       	mov    $0x1,%eax
401e24:	5e                   	pop    %esi
401e25:	5d                   	pop    %ebp
401e26:	c3                   	ret
401e27:	90                   	nop
401e28:	ce                   	into
401e29:	35 8a 23 fc 2f       	xor    $0x2ffc238a,%eax
401e2e:	4f                   	dec    %edi
401e2f:	f9                   	stc
401e30:	55                   	push   %ebp
401e31:	8b ec                	mov    %esp,%ebp
401e33:	81 ec 48 02 00 00    	sub    $0x248,%esp
401e39:	56                   	push   %esi
401e3a:	8b 75 10             	mov    0x10(%ebp),%esi
401e3d:	85 f6                	test   %esi,%esi
401e3f:	0f 84 9a 00 00 00    	je     0x401edf
401e45:	81 fe 00 01 00 00    	cmp    $0x100,%esi
401e4b:	0f 83 8e 00 00 00    	jae    0x401edf
401e51:	68 ff 01 00 00       	push   $0x1ff
401e56:	8d 85 b9 fd ff ff    	lea    -0x247(%ebp),%eax
401e5c:	6a 00                	push   $0x0
401e5e:	50                   	push   %eax
401e5f:	c6 85 b8 fd ff ff 00 	movb   $0x0,-0x248(%ebp)
401e66:	e8 75 65 01 00       	call   0x4183e0
401e6b:	8b 4d 0c             	mov    0xc(%ebp),%ecx
401e6e:	56                   	push   %esi
401e6f:	51                   	push   %ecx
401e70:	8d 95 b8 fd ff ff    	lea    -0x248(%ebp),%edx
401e76:	52                   	push   %edx
401e77:	e8 e4 64 01 00       	call   0x418360
401e7c:	6a 3f                	push   $0x3f
401e7e:	8d 45 b9             	lea    -0x47(%ebp),%eax
401e81:	6a 00                	push   $0x0
401e83:	50                   	push   %eax
401e84:	c7 45 f8 6f 70 65 6e 	movl   $0x6e65706f,-0x8(%ebp)
401e8b:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
401e8f:	c6 45 b8 00          	movb   $0x0,-0x48(%ebp)
401e93:	e8 48 65 01 00       	call   0x4183e0
401e98:	8d 4d b8             	lea    -0x48(%ebp),%ecx
401e9b:	6a 07                	push   $0x7
401e9d:	51                   	push   %ecx
401e9e:	e8 dd 70 01 00       	call   0x418f80
401ea3:	8b 75 08             	mov    0x8(%ebp),%esi
401ea6:	8d 55 b8             	lea    -0x48(%ebp),%edx
401ea9:	52                   	push   %edx
401eaa:	83 c6 1c             	add    $0x1c,%esi
401ead:	56                   	push   %esi
401eae:	e8 6d 65 00 00       	call   0x408420
401eb3:	68 dd 36 ca 10       	push   $0x10ca36dd
401eb8:	6a 00                	push   $0x0
401eba:	6a 00                	push   $0x0
401ebc:	50                   	push   %eax
401ebd:	56                   	push   %esi
401ebe:	e8 0d 04 01 00       	call   0x4122d0
401ec3:	83 c4 48             	add    $0x48,%esp
401ec6:	85 c0                	test   %eax,%eax
401ec8:	74 15                	je     0x401edf
401eca:	6a 00                	push   $0x0
401ecc:	6a 00                	push   $0x0
401ece:	6a 00                	push   $0x0
401ed0:	8d 8d b8 fd ff ff    	lea    -0x248(%ebp),%ecx
401ed6:	51                   	push   %ecx
401ed7:	8d 55 f8             	lea    -0x8(%ebp),%edx
401eda:	52                   	push   %edx
401edb:	6a 00                	push   $0x0
401edd:	ff d0                	call   *%eax
401edf:	33 c0                	xor    %eax,%eax
401ee1:	5e                   	pop    %esi
401ee2:	8b e5                	mov    %ebp,%esp
401ee4:	5d                   	pop    %ebp
401ee5:	c3                   	ret
401ee6:	4f                   	dec    %edi
401ee7:	00 c1                	add    %al,%cl
401ee9:	33 2b                	xor    (%ebx),%ebp
401eeb:	0b 06                	or     (%esi),%eax
401eed:	73 7f                	jae    0x401f6e
401eef:	12 55 8b             	adc    -0x75(%ebp),%dl
401ef2:	ec                   	in     (%dx),%al
401ef3:	83 ec 40             	sub    $0x40,%esp
401ef6:	56                   	push   %esi
401ef7:	57                   	push   %edi
401ef8:	6a 3f                	push   $0x3f
401efa:	8d 45 c1             	lea    -0x3f(%ebp),%eax
401efd:	6a 00                	push   $0x0
401eff:	50                   	push   %eax
401f00:	c6 45 c0 00          	movb   $0x0,-0x40(%ebp)
401f04:	e8 d7 64 01 00       	call   0x4183e0
401f09:	8d 4d c0             	lea    -0x40(%ebp),%ecx
401f0c:	6a 03                	push   $0x3
401f0e:	51                   	push   %ecx
401f0f:	e8 6c 70 01 00       	call   0x418f80
401f14:	8b 7d 08             	mov    0x8(%ebp),%edi
401f17:	8d 55 c0             	lea    -0x40(%ebp),%edx
401f1a:	52                   	push   %edx
401f1b:	8d 77 1c             	lea    0x1c(%edi),%esi
401f1e:	56                   	push   %esi
401f1f:	e8 fc 64 00 00       	call   0x408420
401f24:	68 28 de d4 75       	push   $0x75d4de28
401f29:	6a 00                	push   $0x0
401f2b:	6a 00                	push   $0x0
401f2d:	50                   	push   %eax
401f2e:	56                   	push   %esi
401f2f:	e8 9c 03 01 00       	call   0x4122d0
401f34:	8b f0                	mov    %eax,%esi
401f36:	83 c4 30             	add    $0x30,%esp
401f39:	85 f6                	test   %esi,%esi
401f3b:	74 16                	je     0x401f53
401f3d:	6a 3d                	push   $0x3d
401f3f:	57                   	push   %edi
401f40:	e8 5b a9 00 00       	call   0x40c8a0
401f45:	8b 45 0c             	mov    0xc(%ebp),%eax
401f48:	83 c4 08             	add    $0x8,%esp
401f4b:	68 01 00 04 80       	push   $0x80040001
401f50:	50                   	push   %eax
401f51:	ff d6                	call   *%esi
401f53:	5f                   	pop    %edi
401f54:	33 c0                	xor    %eax,%eax
401f56:	5e                   	pop    %esi
401f57:	8b e5                	mov    %ebp,%esp
401f59:	5d                   	pop    %ebp
401f5a:	c3                   	ret
401f5b:	28 a9 4a a9 ba 55    	sub    %ch,0x55baa94a(%ecx)
401f61:	8b ec                	mov    %esp,%ebp
401f63:	81 ec 60 04 00 00    	sub    $0x460,%esp
401f69:	53                   	push   %ebx
401f6a:	57                   	push   %edi
401f6b:	8b 7d 0c             	mov    0xc(%ebp),%edi
401f6e:	33 db                	xor    %ebx,%ebx
401f70:	3b fb                	cmp    %ebx,%edi
401f72:	0f 84 b8 00 00 00    	je     0x402030
401f78:	66 39 1f             	cmp    %bx,(%edi)
401f7b:	0f 84 af 00 00 00    	je     0x402030
401f81:	56                   	push   %esi
401f82:	6a 3f                	push   $0x3f
401f84:	8d 45 a1             	lea    -0x5f(%ebp),%eax
401f87:	53                   	push   %ebx
401f88:	50                   	push   %eax
401f89:	88 5d a0             	mov    %bl,-0x60(%ebp)
401f8c:	e8 4f 64 01 00       	call   0x4183e0
401f91:	8d 4d a0             	lea    -0x60(%ebp),%ecx
401f94:	6a 07                	push   $0x7
401f96:	51                   	push   %ecx
401f97:	e8 e4 6f 01 00       	call   0x418f80
401f9c:	8b 75 08             	mov    0x8(%ebp),%esi
401f9f:	8d 55 a0             	lea    -0x60(%ebp),%edx
401fa2:	52                   	push   %edx
401fa3:	83 c6 1c             	add    $0x1c,%esi
401fa6:	56                   	push   %esi
401fa7:	e8 74 64 00 00       	call   0x408420
401fac:	68 6f 42 e9 df       	push   $0xdfe9426f
401fb1:	53                   	push   %ebx
401fb2:	53                   	push   %ebx
401fb3:	50                   	push   %eax
401fb4:	56                   	push   %esi
401fb5:	e8 16 03 01 00       	call   0x4122d0
401fba:	8b f0                	mov    %eax,%esi
401fbc:	83 c4 30             	add    $0x30,%esp
401fbf:	3b f3                	cmp    %ebx,%esi
401fc1:	74 6c                	je     0x40202f
401fc3:	68 fe 03 00 00       	push   $0x3fe
401fc8:	8d 8d a2 fb ff ff    	lea    -0x45e(%ebp),%ecx
401fce:	33 c0                	xor    %eax,%eax
401fd0:	53                   	push   %ebx
401fd1:	51                   	push   %ecx
401fd2:	66 89 85 a0 fb ff ff 	mov    %ax,-0x460(%ebp)
401fd9:	e8 02 64 01 00       	call   0x4183e0
401fde:	57                   	push   %edi
401fdf:	e8 6c 66 01 00       	call   0x418650
401fe4:	03 c0                	add    %eax,%eax
401fe6:	83 c4 10             	add    $0x10,%esp
401fe9:	3d fc 03 00 00       	cmp    $0x3fc,%eax
401fee:	77 3f                	ja     0x40202f
401ff0:	50                   	push   %eax
401ff1:	8d 95 a0 fb ff ff    	lea    -0x460(%ebp),%edx
401ff7:	57                   	push   %edi
401ff8:	52                   	push   %edx
401ff9:	e8 62 63 01 00       	call   0x418360
401ffe:	83 c4 0c             	add    $0xc,%esp
402001:	8d 55 e0             	lea    -0x20(%ebp),%edx
402004:	8d 85 a0 fb ff ff    	lea    -0x460(%ebp),%eax
40200a:	b9 14 04 00 00       	mov    $0x414,%ecx
40200f:	52                   	push   %edx
402010:	89 5d e0             	mov    %ebx,-0x20(%ebp)
402013:	c7 45 e4 03 00 00 00 	movl   $0x3,-0x1c(%ebp)
40201a:	89 45 e8             	mov    %eax,-0x18(%ebp)
40201d:	89 5d ec             	mov    %ebx,-0x14(%ebp)
402020:	66 89 4d f0          	mov    %cx,-0x10(%ebp)
402024:	89 5d f2             	mov    %ebx,-0xe(%ebp)
402027:	89 5d f6             	mov    %ebx,-0xa(%ebp)
40202a:	89 5d fa             	mov    %ebx,-0x6(%ebp)
40202d:	ff d6                	call   *%esi
40202f:	5e                   	pop    %esi
402030:	5f                   	pop    %edi
402031:	5b                   	pop    %ebx
402032:	8b e5                	mov    %ebp,%esp
402034:	5d                   	pop    %ebp
402035:	c3                   	ret
402036:	2a 5e ea             	sub    -0x16(%esi),%bl
402039:	bf 03 64 6b c7       	mov    $0xc76b6403,%edi
40203e:	8c 20                	mov    %fs,(%eax)
402040:	55                   	push   %ebp