411c49:	e8 f2 4e 00 00       	call   0x416b40
411c4e:	33 d2                	xor    %edx,%edx
411c50:	83 c4 18             	add    $0x18,%esp
411c53:	3b c2                	cmp    %edx,%eax
411c55:	7d 15                	jge    0x411c6c
411c57:	8b 17                	mov    (%edi),%edx
411c59:	52                   	push   %edx
411c5a:	56                   	push   %esi
411c5b:	e8 90 50 00 00       	call   0x416cf0
411c60:	83 c4 08             	add    $0x8,%esp
411c63:	5f                   	pop    %edi
411c64:	5e                   	pop    %esi
411c65:	33 c0                	xor    %eax,%eax
411c67:	5b                   	pop    %ebx
411c68:	8b e5                	mov    %ebp,%esp
411c6a:	5d                   	pop    %ebp
411c6b:	c3                   	ret
411c6c:	8b 45 e8             	mov    -0x18(%ebp),%eax
411c6f:	8b 4d 14             	mov    0x14(%ebp),%ecx
411c72:	3d 00 40 00 00       	cmp    $0x4000,%eax
411c77:	76 12                	jbe    0x411c8b
411c79:	83 f9 0d             	cmp    $0xd,%ecx
411c7c:	74 0d                	je     0x411c8b
411c7e:	83 f9 0e             	cmp    $0xe,%ecx
411c81:	74 08                	je     0x411c8b
411c83:	b8 00 40 00 00       	mov    $0x4000,%eax
411c88:	89 45 e8             	mov    %eax,-0x18(%ebp)
411c8b:	83 f9 0f             	cmp    $0xf,%ecx
411c8e:	75 4a                	jne    0x411cda
411c90:	8b 8e ec 07 00 00    	mov    0x7ec(%esi),%ecx
411c96:	52                   	push   %edx
411c97:	89 45 f8             	mov    %eax,-0x8(%ebp)
411c9a:	8d 45 f8             	lea    -0x8(%ebp),%eax
411c9d:	50                   	push   %eax
411c9e:	8b 86 e8 07 00 00    	mov    0x7e8(%esi),%eax
411ca4:	03 c9                	add    %ecx,%ecx
411ca6:	51                   	push   %ecx
411ca7:	8b 0f                	mov    (%edi),%ecx
411ca9:	50                   	push   %eax
411caa:	53                   	push   %ebx
411cab:	52                   	push   %edx
411cac:	52                   	push   %edx
411cad:	52                   	push   %edx
411cae:	51                   	push   %ecx
411caf:	56                   	push   %esi
411cb0:	e8 6b 4f 00 00       	call   0x416c20
411cb5:	8b 17                	mov    (%edi),%edx
411cb7:	52                   	push   %edx
411cb8:	56                   	push   %esi
411cb9:	8b d8                	mov    %eax,%ebx
411cbb:	e8 30 50 00 00       	call   0x416cf0
411cc0:	83 c4 30             	add    $0x30,%esp
411cc3:	85 db                	test   %ebx,%ebx
411cc5:	78 9c                	js     0x411c63
411cc7:	8b 86 ec 07 00 00    	mov    0x7ec(%esi),%eax
411ccd:	8b 4d e8             	mov    -0x18(%ebp),%ecx
411cd0:	5f                   	pop    %edi
411cd1:	5e                   	pop    %esi
411cd2:	8d 04 41             	lea    (%ecx,%eax,2),%eax
411cd5:	5b                   	pop    %ebx
411cd6:	8b e5                	mov    %ebp,%esp
411cd8:	5d                   	pop    %ebp
411cd9:	c3                   	ret
411cda:	83 f9 0c             	cmp    $0xc,%ecx
411cdd:	75 41                	jne    0x411d20
411cdf:	8b 4d 18             	mov    0x18(%ebp),%ecx
411ce2:	3b ca                	cmp    %edx,%ecx
411ce4:	0f 84 79 ff ff ff    	je     0x411c63
411cea:	52                   	push   %edx
411ceb:	89 55 f8             	mov    %edx,-0x8(%ebp)
411cee:	8d 55 f8             	lea    -0x8(%ebp),%edx
411cf1:	52                   	push   %edx
411cf2:	50                   	push   %eax
411cf3:	8b 07                	mov    (%edi),%eax
411cf5:	81 c1 b0 20 01 00    	add    $0x120b0,%ecx
411cfb:	51                   	push   %ecx
411cfc:	53                   	push   %ebx
411cfd:	6a 00                	push   $0x0
411cff:	6a 00                	push   $0x0
411d01:	6a 00                	push   $0x0
411d03:	50                   	push   %eax
411d04:	56                   	push   %esi
411d05:	e8 66 4f 00 00       	call   0x416c70
411d0a:	8b 0f                	mov    (%edi),%ecx
411d0c:	51                   	push   %ecx
411d0d:	56                   	push   %esi
411d0e:	e8 dd 4f 00 00       	call   0x416cf0
411d13:	8b 45 e8             	mov    -0x18(%ebp),%eax
411d16:	83 c4 30             	add    $0x30,%esp
411d19:	5f                   	pop    %edi
411d1a:	5e                   	pop    %esi
411d1b:	5b                   	pop    %ebx
411d1c:	8b e5                	mov    %ebp,%esp
411d1e:	5d                   	pop    %ebp
411d1f:	c3                   	ret
411d20:	83 f9 0d             	cmp    $0xd,%ecx
411d23:	0f 84 31 01 00 00    	je     0x411e5a
411d29:	83 f9 0e             	cmp    $0xe,%ecx
411d2c:	0f 84 28 01 00 00    	je     0x411e5a
411d32:	83 f9 0b             	cmp    $0xb,%ecx
411d35:	75 3b                	jne    0x411d72
411d37:	8b 8e e4 07 00 00    	mov    0x7e4(%esi),%ecx
411d3d:	52                   	push   %edx
411d3e:	8d 45 f8             	lea    -0x8(%ebp),%eax
411d41:	50                   	push   %eax
411d42:	8b 86 e0 07 00 00    	mov    0x7e0(%esi),%eax
411d48:	51                   	push   %ecx
411d49:	8b 0f                	mov    (%edi),%ecx
411d4b:	50                   	push   %eax
411d4c:	53                   	push   %ebx
411d4d:	52                   	push   %edx
411d4e:	52                   	push   %edx
411d4f:	52                   	push   %edx
411d50:	51                   	push   %ecx
411d51:	56                   	push   %esi
411d52:	89 55 f8             	mov    %edx,-0x8(%ebp)
411d55:	e8 c6 4e 00 00       	call   0x416c20
411d5a:	8b 17                	mov    (%edi),%edx
411d5c:	52                   	push   %edx
411d5d:	56                   	push   %esi
411d5e:	e8 8d 4f 00 00       	call   0x416cf0
411d63:	83 c4 30             	add    $0x30,%esp
411d66:	5f                   	pop    %edi
411d67:	5e                   	pop    %esi
411d68:	b8 01 00 00 00       	mov    $0x1,%eax
411d6d:	5b                   	pop    %ebx
411d6e:	8b e5                	mov    %ebp,%esp
411d70:	5d                   	pop    %ebp
411d71:	c3                   	ret
411d72:	83 f9 14             	cmp    $0x14,%ecx
411d75:	75 3f                	jne    0x411db6
411d77:	8b 8e 08 0a 00 00    	mov    0xa08(%esi),%ecx
411d7d:	89 45 f8             	mov    %eax,-0x8(%ebp)
411d80:	8d 45 f8             	lea    -0x8(%ebp),%eax
411d83:	52                   	push   %edx
411d84:	50                   	push   %eax
411d85:	8b 86 04 0a 00 00    	mov    0xa04(%esi),%eax
411d8b:	51                   	push   %ecx
411d8c:	50                   	push   %eax
411d8d:	8b 0f                	mov    (%edi),%ecx
411d8f:	53                   	push   %ebx
411d90:	52                   	push   %edx
411d91:	52                   	push   %edx
411d92:	52                   	push   %edx
411d93:	51                   	push   %ecx
411d94:	56                   	push   %esi
411d95:	e8 86 4e 00 00       	call   0x416c20
411d9a:	8b 17                	mov    (%edi),%edx
411d9c:	52                   	push   %edx
411d9d:	56                   	push   %esi
411d9e:	8b d8                	mov    %eax,%ebx
411da0:	e8 4b 4f 00 00       	call   0x416cf0
411da5:	83 c4 30             	add    $0x30,%esp
411da8:	5f                   	pop    %edi
411da9:	33 c0                	xor    %eax,%eax
411dab:	85 db                	test   %ebx,%ebx
411dad:	5e                   	pop    %esi
411dae:	0f 99 c0             	setns  %al
411db1:	5b                   	pop    %ebx
411db2:	8b e5                	mov    %ebp,%esp
411db4:	5d                   	pop    %ebp
411db5:	c3                   	ret
411db6:	83 f9 12             	cmp    $0x12,%ecx
411db9:	75 26                	jne    0x411de1
411dbb:	8b 8e d8 07 00 00    	mov    0x7d8(%esi),%ecx
411dc1:	3b ca                	cmp    %edx,%ecx
411dc3:	0f 84 9a fe ff ff    	je     0x411c63
411dc9:	89 45 f8             	mov    %eax,-0x8(%ebp)
411dcc:	52                   	push   %edx
411dcd:	8d 45 f8             	lea    -0x8(%ebp),%eax
411dd0:	50                   	push   %eax
411dd1:	8b 81 74 20 00 00    	mov    0x2074(%ecx),%eax
411dd7:	50                   	push   %eax
411dd8:	81 c1 7c 20 00 00    	add    $0x207c,%ecx
411dde:	51                   	push   %ecx
411ddf:	eb ac                	jmp    0x411d8d
411de1:	83 f9 1b             	cmp    $0x1b,%ecx
411de4:	75 16                	jne    0x411dfc
411de6:	8b 8e 2c 0b 00 00    	mov    0xb2c(%esi),%ecx
411dec:	8d 45 f8             	lea    -0x8(%ebp),%eax
411def:	52                   	push   %edx
411df0:	50                   	push   %eax
411df1:	8b 86 28 0b 00 00    	mov    0xb28(%esi),%eax
411df7:	89 55 f8             	mov    %edx,-0x8(%ebp)
411dfa:	eb 8f                	jmp    0x411d8b
411dfc:	83 f9 1c             	cmp    $0x1c,%ecx
411dff:	75 19                	jne    0x411e1a
411e01:	8b 8e 34 0b 00 00    	mov    0xb34(%esi),%ecx
411e07:	8d 45 f8             	lea    -0x8(%ebp),%eax
411e0a:	52                   	push   %edx
411e0b:	50                   	push   %eax
411e0c:	8b 86 30 0b 00 00    	mov    0xb30(%esi),%eax
411e12:	89 55 f8             	mov    %edx,-0x8(%ebp)
411e15:	e9 71 ff ff ff       	jmp    0x411d8b
411e1a:	83 f9 1a             	cmp    $0x1a,%ecx
411e1d:	75 19                	jne    0x411e38
411e1f:	8b 8e 60 0b 00 00    	mov    0xb60(%esi),%ecx
411e25:	8d 45 f8             	lea    -0x8(%ebp),%eax
411e28:	52                   	push   %edx
411e29:	50                   	push   %eax
411e2a:	8b 86 5c 0b 00 00    	mov    0xb5c(%esi),%eax
411e30:	89 55 f8             	mov    %edx,-0x8(%ebp)
411e33:	e9 53 ff ff ff       	jmp    0x411d8b
411e38:	83 f9 20             	cmp    $0x20,%ecx
411e3b:	0f 85 22 fe ff ff    	jne    0x411c63
411e41:	8b 8e 90 0b 00 00    	mov    0xb90(%esi),%ecx
411e47:	8d 45 f8             	lea    -0x8(%ebp),%eax
411e4a:	52                   	push   %edx
411e4b:	50                   	push   %eax
411e4c:	8b 86 8c 0b 00 00    	mov    0xb8c(%esi),%eax
411e52:	89 55 f8             	mov    %edx,-0x8(%ebp)
411e55:	e9 31 ff ff ff       	jmp    0x411d8b
411e5a:	89 55 f8             	mov    %edx,-0x8(%ebp)
411e5d:	8b 55 18             	mov    0x18(%ebp),%edx
411e60:	85 d2                	test   %edx,%edx
411e62:	0f 84 fb fd ff ff    	je     0x411c63
411e68:	8b 92 d8 07 00 00    	mov    0x7d8(%edx),%edx
411e6e:	85 d2                	test   %edx,%edx
411e70:	0f 84 ed fd ff ff    	je     0x411c63
411e76:	3d 00 00 08 00       	cmp    $0x80000,%eax
411e7b:	76 08                	jbe    0x411e85
411e7d:	b8 00 00 08 00       	mov    $0x80000,%eax
411e82:	89 45 e8             	mov    %eax,-0x18(%ebp)
411e85:	83 f9 0e             	cmp    $0xe,%ecx
411e88:	8d 8a 28 50 4f 00    	lea    0x4f5028(%edx),%ecx
411e8e:	74 06                	je     0x411e96
411e90:	8d 8a 28 98 2f 00    	lea    0x2f9828(%edx),%ecx
411e96:	6a 00                	push   $0x0
411e98:	8d 55 f8             	lea    -0x8(%ebp),%edx
411e9b:	52                   	push   %edx
411e9c:	50                   	push   %eax
411e9d:	8b 07                	mov    (%edi),%eax
411e9f:	83 c1 0d             	add    $0xd,%ecx
411ea2:	51                   	push   %ecx
411ea3:	53                   	push   %ebx
411ea4:	6a 00                	push   $0x0
411ea6:	6a 00                	push   $0x0
411ea8:	6a 00                	push   $0x0
411eaa:	50                   	push   %eax
411eab:	56                   	push   %esi
411eac:	e8 bf 4d 00 00       	call   0x416c70
411eb1:	8b 0f                	mov    (%edi),%ecx
411eb3:	51                   	push   %ecx
411eb4:	56                   	push   %esi
411eb5:	e8 36 4e 00 00       	call   0x416cf0
411eba:	8b 45 e8             	mov    -0x18(%ebp),%eax
411ebd:	83 c4 30             	add    $0x30,%esp
411ec0:	5f                   	pop    %edi
411ec1:	5e                   	pop    %esi
411ec2:	5b                   	pop    %ebx
411ec3:	8b e5                	mov    %ebp,%esp
411ec5:	5d                   	pop    %ebp
411ec6:	c3                   	ret
411ec7:	fd                   	std
411ec8:	52                   	push   %edx
411ec9:	d9 5f 6c             	fstps  0x6c(%edi)
411ecc:	93                   	xchg   %eax,%ebx
411ecd:	a4                   	movsb  %ds:(%esi),%es:(%edi)
411ece:	94                   	xchg   %eax,%esp
411ecf:	4f                   	dec    %edi
411ed0:	55                   	push   %ebp
411ed1:	8b ec                	mov    %esp,%ebp
411ed3:	8b 45 0c             	mov    0xc(%ebp),%eax
411ed6:	83 ec 7c             	sub    $0x7c,%esp
411ed9:	57                   	push   %edi
411eda:	33 ff                	xor    %edi,%edi
411edc:	3b c7                	cmp    %edi,%eax
411ede:	0f 84 21 03 00 00    	je     0x412205
411ee4:	66 39 38             	cmp    %di,(%eax)
411ee7:	0f 84 18 03 00 00    	je     0x412205
411eed:	53                   	push   %ebx
411eee:	56                   	push   %esi
411eef:	8b 75 10             	mov    0x10(%ebp),%esi
411ef2:	b9 03 00 00 00       	mov    $0x3,%ecx
411ef7:	b8 01 00 00 00       	mov    $0x1,%eax
411efc:	ba 07 00 00 00       	mov    $0x7,%edx
411f01:	89 45 f8             	mov    %eax,-0x8(%ebp)
411f04:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
411f0b:	bb 89 00 12 00       	mov    $0x120089,%ebx
411f10:	c7 45 f0 60 00 00 00 	movl   $0x60,-0x10(%ebp)
411f17:	89 55 f4             	mov    %edx,-0xc(%ebp)
411f1a:	3b f1                	cmp    %ecx,%esi
411f1c:	75 0a                	jne    0x411f28
411f1e:	bb a0 00 12 00       	mov    $0x1200a0,%ebx
411f23:	e9 83 00 00 00       	jmp    0x411fab
411f28:	83 fe 11             	cmp    $0x11,%esi
411f2b:	74 76                	je     0x411fa3
411f2d:	83 fe 14             	cmp    $0x14,%esi
411f30:	74 71                	je     0x411fa3
411f32:	83 fe 1b             	cmp    $0x1b,%esi
411f35:	74 6c                	je     0x411fa3
411f37:	83 fe 1c             	cmp    $0x1c,%esi
411f3a:	74 67                	je     0x411fa3
411f3c:	83 fe 1a             	cmp    $0x1a,%esi
411f3f:	74 62                	je     0x411fa3
411f41:	83 fe 20             	cmp    $0x20,%esi
411f44:	74 5d                	je     0x411fa3
411f46:	83 fe 12             	cmp    $0x12,%esi
411f49:	74 58                	je     0x411fa3
411f4b:	83 fe 09             	cmp    $0x9,%esi
411f4e:	75 07                	jne    0x411f57
411f50:	bb 89 01 12 00       	mov    $0x120189,%ebx
411f55:	eb 54                	jmp    0x411fab
411f57:	83 fe 0f             	cmp    $0xf,%esi
411f5a:	74 4a                	je     0x411fa6
411f5c:	83 fe 0b             	cmp    $0xb,%esi
411f5f:	74 45                	je     0x411fa6
411f61:	83 fe 16             	cmp    $0x16,%esi
411f64:	75 05                	jne    0x411f6b
411f66:	89 55 f4             	mov    %edx,-0xc(%ebp)
411f69:	eb 40                	jmp    0x411fab
411f6b:	83 fe 08             	cmp    $0x8,%esi
411f6e:	75 05                	jne    0x411f75
411f70:	89 45 f4             	mov    %eax,-0xc(%ebp)
411f73:	eb 31                	jmp    0x411fa6
411f75:	83 fe 19             	cmp    $0x19,%esi
411f78:	75 05                	jne    0x411f7f
411f7a:	89 7d f4             	mov    %edi,-0xc(%ebp)
411f7d:	eb 2c                	jmp    0x411fab
411f7f:	83 fe 10             	cmp    $0x10,%esi
411f82:	75 09                	jne    0x411f8d
411f84:	c7 45 f8 04 00 00 00 	movl   $0x4,-0x8(%ebp)
411f8b:	eb 19                	jmp    0x411fa6
411f8d:	83 fe 04             	cmp    $0x4,%esi
411f90:	75 19                	jne    0x411fab
411f92:	89 4d f8             	mov    %ecx,-0x8(%ebp)
411f95:	c7 45 f0 21 00 00 00 	movl   $0x21,-0x10(%ebp)
411f9c:	bb 81 01 10 00       	mov    $0x100181,%ebx
411fa1:	eb 08                	jmp    0x411fab
411fa3:	89 4d f8             	mov    %ecx,-0x8(%ebp)
411fa6:	bb 9f 01 12 00       	mov    $0x12019f,%ebx
411fab:	8b 4d 0c             	mov    0xc(%ebp),%ecx
411fae:	57                   	push   %edi
411faf:	57                   	push   %edi
411fb0:	8d 45 dc             	lea    -0x24(%ebp),%eax
411fb3:	50                   	push   %eax
411fb4:	89 7d e4             	mov    %edi,-0x1c(%ebp)
411fb7:	89 7d e8             	mov    %edi,-0x18(%ebp)
411fba:	8b 7d 08             	mov    0x8(%ebp),%edi
411fbd:	51                   	push   %ecx
411fbe:	57                   	push   %edi
411fbf:	e8 ec 44 00 00       	call   0x4164b0
411fc4:	83 c4 14             	add    $0x14,%esp
411fc7:	85 c0                	test   %eax,%eax
411fc9:	0f 84 2d 02 00 00    	je     0x4121fc
411fcf:	33 c0                	xor    %eax,%eax
411fd1:	8d 55 dc             	lea    -0x24(%ebp),%edx
411fd4:	c7 45 c4 18 00 00 00 	movl   $0x18,-0x3c(%ebp)
411fdb:	89 45 c8             	mov    %eax,-0x38(%ebp)
411fde:	89 55 cc             	mov    %edx,-0x34(%ebp)