401a57:	83 c4 10             	add    $0x10,%esp
401a5a:	5b                   	pop    %ebx
401a5b:	89 47 20             	mov    %eax,0x20(%edi)
401a5e:	5f                   	pop    %edi
401a5f:	b8 01 00 00 00       	mov    $0x1,%eax
401a64:	5e                   	pop    %esi
401a65:	8b e5                	mov    %ebp,%esp
401a67:	5d                   	pop    %ebp
401a68:	c3                   	ret
401a69:	5b                   	pop    %ebx
401a6a:	5f                   	pop    %edi
401a6b:	33 c0                	xor    %eax,%eax
401a6d:	5e                   	pop    %esi
401a6e:	8b e5                	mov    %ebp,%esp
401a70:	5d                   	pop    %ebp
401a71:	c3                   	ret
401a72:	c0 4b 09 e4          	rorb   $0xe4,0x9(%ebx)
401a76:	83 c5 94             	add    $0xffffff94,%ebp
401a79:	94                   	xchg   %eax,%esp
401a7a:	bb 81 69 35 ba       	mov    $0xba356981,%ebx
401a7f:	22 55 8b             	and    -0x75(%ebp),%dl
401a82:	ec                   	in     (%dx),%al
401a83:	56                   	push   %esi
401a84:	8b 75 08             	mov    0x8(%ebp),%esi
401a87:	57                   	push   %edi
401a88:	8b be d8 07 00 00    	mov    0x7d8(%esi),%edi
401a8e:	85 ff                	test   %edi,%edi
401a90:	0f 84 a5 00 00 00    	je     0x401b3b
401a96:	56                   	push   %esi
401a97:	e8 14 fa ff ff       	call   0x4014b0
401a9c:	83 c4 04             	add    $0x4,%esp
401a9f:	83 bf 00 20 00 00 00 	cmpl   $0x0,0x2000(%edi)
401aa6:	0f 84 8f 00 00 00    	je     0x401b3b
401aac:	83 bf 04 20 00 00 00 	cmpl   $0x0,0x2004(%edi)
401ab3:	0f 84 82 00 00 00    	je     0x401b3b
401ab9:	8b 87 20 20 00 00    	mov    0x2020(%edi),%eax
401abf:	53                   	push   %ebx
401ac0:	c7 87 04 20 00 00 00 	movl   $0x0,0x2004(%edi)
401ac7:	00 00 00
401aca:	c6 84 06 b0 44 02 00 	movb   $0x0,0x244b0(%esi,%eax,1)
401ad1:	00
401ad2:	8b 8f 20 20 00 00    	mov    0x2020(%edi),%ecx
401ad8:	51                   	push   %ecx
401ad9:	8d 97 80 64 00 00    	lea    0x6480(%edi),%edx
401adf:	52                   	push   %edx
401ae0:	8d 9e b0 44 02 00    	lea    0x244b0(%esi),%ebx
401ae6:	53                   	push   %ebx
401ae7:	e8 74 68 01 00       	call   0x418360
401aec:	6a 00                	push   $0x0
401aee:	8d 86 98 14 00 00    	lea    0x1498(%esi),%eax
401af4:	50                   	push   %eax
401af5:	53                   	push   %ebx
401af6:	e8 65 6c 01 00       	call   0x418760
401afb:	83 c4 18             	add    $0x18,%esp
401afe:	83 be 58 11 00 00 0f 	cmpl   $0xf,0x1158(%esi)
401b05:	76 0a                	jbe    0x401b11
401b07:	c7 86 58 11 00 00 00 	movl   $0x0,0x1158(%esi)
401b0e:	00 00 00
401b11:	8b 86 58 11 00 00    	mov    0x1158(%esi),%eax
401b17:	8b 96 94 14 00 00    	mov    0x1494(%esi),%edx
401b1d:	50                   	push   %eax
401b1e:	8d 48 01             	lea    0x1(%eax),%ecx
401b21:	89 8e 58 11 00 00    	mov    %ecx,0x1158(%esi)
401b27:	03 97 20 20 00 00    	add    0x2020(%edi),%edx
401b2d:	6a 06                	push   $0x6
401b2f:	52                   	push   %edx
401b30:	53                   	push   %ebx
401b31:	56                   	push   %esi
401b32:	e8 39 1d 01 00       	call   0x413870
401b37:	83 c4 14             	add    $0x14,%esp
401b3a:	5b                   	pop    %ebx
401b3b:	5f                   	pop    %edi
401b3c:	5e                   	pop    %esi
401b3d:	5d                   	pop    %ebp
401b3e:	c3                   	ret
401b3f:	cc                   	int3
401b40:	55                   	push   %ebp
401b41:	8b ec                	mov    %esp,%ebp
401b43:	8b 45 08             	mov    0x8(%ebp),%eax
401b46:	56                   	push   %esi
401b47:	8b b0 d8 07 00 00    	mov    0x7d8(%eax),%esi
401b4d:	85 f6                	test   %esi,%esi
401b4f:	74 33                	je     0x401b84
401b51:	ff 86 18 20 00 00    	incl   0x2018(%esi)
401b57:	83 be 00 20 00 00 00 	cmpl   $0x0,0x2000(%esi)
401b5e:	74 24                	je     0x401b84
401b60:	83 be 04 20 00 00 00 	cmpl   $0x0,0x2004(%esi)
401b67:	75 1b                	jne    0x401b84
401b69:	83 be 10 20 00 00 00 	cmpl   $0x0,0x2010(%esi)
401b70:	75 30                	jne    0x401ba2
401b72:	8b 86 0c 20 00 00    	mov    0x200c(%esi),%eax
401b78:	83 f8 02             	cmp    $0x2,%eax
401b7b:	7d 0c                	jge    0x401b89
401b7d:	40                   	inc    %eax
401b7e:	89 86 0c 20 00 00    	mov    %eax,0x200c(%esi)
401b84:	33 c0                	xor    %eax,%eax
401b86:	5e                   	pop    %esi
401b87:	5d                   	pop    %ebp
401b88:	c3                   	ret
401b89:	c7 86 0c 20 00 00 00 	movl   $0x0,0x200c(%esi)
401b90:	00 00 00
401b93:	c7 86 04 20 00 00 01 	movl   $0x1,0x2004(%esi)
401b9a:	00 00 00
401b9d:	33 c0                	xor    %eax,%eax
401b9f:	5e                   	pop    %esi
401ba0:	5d                   	pop    %ebp
401ba1:	c3                   	ret
401ba2:	8b 8e 24 20 00 00    	mov    0x2024(%esi),%ecx
401ba8:	51                   	push   %ecx
401ba9:	50                   	push   %eax
401baa:	e8 a1 f5 ff ff       	call   0x401150
401baf:	83 c4 08             	add    $0x8,%esp
401bb2:	89 86 14 20 00 00    	mov    %eax,0x2014(%esi)
401bb8:	c7 86 0c 20 00 00 00 	movl   $0x0,0x200c(%esi)
401bbf:	00 00 00
401bc2:	c7 86 10 20 00 00 00 	movl   $0x0,0x2010(%esi)
401bc9:	00 00 00
401bcc:	b8 01 00 00 00       	mov    $0x1,%eax
401bd1:	5e                   	pop    %esi
401bd2:	5d                   	pop    %ebp
401bd3:	c3                   	ret
401bd4:	f4                   	hlt
401bd5:	90                   	nop
401bd6:	f1                   	int1
401bd7:	dd df                	fstp   %st(7)
401bd9:	b9 fb 75 35 9c       	mov    $0x9c3575fb,%ecx
401bde:	de 69 55             	fisubrs 0x55(%ecx)
401be1:	8b ec                	mov    %esp,%ebp
401be3:	81 ec 0c 02 00 00    	sub    $0x20c,%esp
401be9:	53                   	push   %ebx
401bea:	8b 5d 0c             	mov    0xc(%ebp),%ebx
401bed:	57                   	push   %edi
401bee:	85 db                	test   %ebx,%ebx
401bf0:	0f 84 d2 01 00 00    	je     0x401dc8
401bf6:	8b 7d 10             	mov    0x10(%ebp),%edi
401bf9:	85 ff                	test   %edi,%edi
401bfb:	0f 84 c7 01 00 00    	je     0x401dc8
401c01:	56                   	push   %esi
401c02:	6a 7f                	push   $0x7f
401c04:	8d 85 f5 fd ff ff    	lea    -0x20b(%ebp),%eax
401c0a:	6a 00                	push   $0x0
401c0c:	50                   	push   %eax
401c0d:	c6 85 f4 fd ff ff 00 	movb   $0x0,-0x20c(%ebp)
401c14:	e8 c7 67 01 00       	call   0x4183e0
401c19:	33 c9                	xor    %ecx,%ecx
401c1b:	68 fe 00 00 00       	push   $0xfe
401c20:	51                   	push   %ecx
401c21:	8d 95 76 fe ff ff    	lea    -0x18a(%ebp),%edx
401c27:	52                   	push   %edx
401c28:	66 89 8d 74 fe ff ff 	mov    %cx,-0x18c(%ebp)
401c2f:	e8 ac 67 01 00       	call   0x4183e0
401c34:	33 c0                	xor    %eax,%eax
401c36:	6a 36                	push   $0x36
401c38:	50                   	push   %eax
401c39:	8d 4d ca             	lea    -0x36(%ebp),%ecx
401c3c:	51                   	push   %ecx
401c3d:	c7 45 0c 5c 00 00 00 	movl   $0x5c,0xc(%ebp)
401c44:	c7 45 c0 2e 00 65 00 	movl   $0x65002e,-0x40(%ebp)
401c4b:	c7 45 c4 78 00 65 00 	movl   $0x650078,-0x3c(%ebp)
401c52:	66 89 45 c8          	mov    %ax,-0x38(%ebp)
401c56:	e8 85 67 01 00       	call   0x4183e0
401c5b:	8d 44 3b ff          	lea    -0x1(%ebx,%edi,1),%eax
401c5f:	83 c4 24             	add    $0x24,%esp
401c62:	80 38 31             	cmpb   $0x31,(%eax)
401c65:	75 2e                	jne    0x401c95
401c67:	c6 00 00             	movb   $0x0,(%eax)
401c6a:	be 01 00 00 00       	mov    $0x1,%esi
401c6f:	90                   	nop
401c70:	80 38 2e             	cmpb   $0x2e,(%eax)
401c73:	74 09                	je     0x401c7e
401c75:	46                   	inc    %esi
401c76:	48                   	dec    %eax
401c77:	83 fe 0e             	cmp    $0xe,%esi
401c7a:	72 f4                	jb     0x401c70
401c7c:	eb 2c                	jmp    0x401caa
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